Hello,
I have been trying to figure out how to get stored procs working with
Nhibernate and looks like I keep running into road blocks,
I have a very simple query
<sql-query name="LoadsbyZipcode_Get">
<return class="FDDataTransfer.Load,FDDataTransfer" >
<return-property name="PickupCity" column="`PickupCity`" />
</return>
exec dbo.LoadsbyZipcode_Get :ZipCode
</sql-query>
Here is the stored proc
ALTER PROCEDURE [dbo].[LoadsbyZipcode_Get]
@ZipCode int
-...@radius int
AS
BEGIN
if ( @ZipCode = 1 )
SELECT PickupCity
FROM dbo.[Load]
END
And here is how Iam trying to retrieve it ..
NHibernate.ISession _session =
StaticSessionManager.SessionFactory.OpenSession();
LoadDataProvider Ldp = new LoadDataProvider(_session);
NHibernate.IQuery query =
_session.GetNamedQuery("LoadsbyZipcode_Get");
query.SetInt32("ZipCode", 1);
query.SetResultTransformer(new
NHibernate.Transform.AliasToBeanConstructorResultTransformer(typeof(Load).GetConstructors()
[0]));
System.Collections.IList result = query.List();
I get this wierd error
LoadID1_0_0_
Description: An unhandled exception occurred during the execution of
the current web request. Please review the stack trace for more
information about the error and where it originated in the code.
Exception Details: System.IndexOutOfRangeException: LoadID1_0_0_
And here is the stack trace
[IndexOutOfRangeException: LoadID1_0_0_]
System.Data.ProviderBase.FieldNameLookup.GetOrdinal(String
fieldName) +4841162
System.Data.SqlClient.SqlDataReader.GetOrdinal(String name) +67
NHibernate.Driver.NHybridDataReader.GetOrdinal(String name) +40
NHibernate.Type.NullableType.NullSafeGet(IDataReader rs, String
name) +74
NHibernate.Type.NullableType.NullSafeGet(IDataReader rs, String[]
names, ISessionImplementor session, Object owner) +56
NHibernate.Loader.Loader.GetKeyFromResultSet(Int32 i,
IEntityPersister persister, Object id, IDataReader rs,
ISessionImplementor session) +167
NHibernate.Loader.Loader.GetRowFromResultSet(IDataReader resultSet,
ISessionImplementor session, QueryParameters queryParameters,
LockMode[] lockModeArray, EntityKey optionalObjectKey, IList
hydratedObjects, EntityKey[] keys, Boolean returnProxies) +292
NHibernate.Loader.Loader.DoQuery(ISessionImplementor session,
QueryParameters queryParameters, Boolean returnProxies) +1287
NHibernate.Loader.Loader.DoQueryAndInitializeNonLazyCollections(ISessionImplementor
session, QueryParameters queryParameters, Boolean returnProxies) +106
NHibernate.Loader.Loader.DoList(ISessionImplementor session,
QueryParameters queryParameters) +172
[ADOException: could not execute query
[ exec dbo.LoadsbyZipcode_Get @p0 ]
Name:ZipCode - Value:1
[SQL: exec dbo.LoadsbyZipcode_Get @p0]]
NHibernate.Loader.Loader.DoList(ISessionImplementor session,
QueryParameters queryParameters) +336
NHibernate.Loader.Loader.ListIgnoreQueryCache(ISessionImplementor
session, QueryParameters queryParameters) +46
NHibernate.Loader.Loader.List(ISessionImplementor session,
QueryParameters queryParameters, ISet`1 querySpaces, IType[]
resultTypes) +155
NHibernate.Loader.Custom.CustomLoader.List(ISessionImplementor
session, QueryParameters queryParameters) +52
NHibernate.Impl.SessionImpl.ListCustomQuery(ICustomQuery
customQuery, QueryParameters queryParameters, IList results) +247
NHibernate.Impl.SessionImpl.List(NativeSQLQuerySpecification spec,
QueryParameters queryParameters, IList results) +220
NHibernate.Impl.SessionImpl.List(NativeSQLQuerySpecification spec,
QueryParameters queryParameters) +163
NHibernate.Impl.SqlQueryImpl.List() +172
FreightDaddy.LoadSearchResults.Page_Load(Object sender, EventArgs
e) in C:\Ashwin - Docs\Projects\FreightDaddy\FreightDaddy\FreightDaddy
\LoadSearchResults.aspx.cs:29
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp,
Object o, Object t, EventArgs e) +14
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object
sender, EventArgs e) +35
System.Web.UI.Control.OnLoad(EventArgs e) +99
System.Web.UI.Control.LoadRecursive() +50
System.Web.UI.Page.ProcessRequestMain(Boolean
includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
+627
I donno what I am doing wrong here... please help.
Ashwin
--
You received this message because you are subscribed to the Google Groups
"nhusers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/nhusers?hl=en.