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.

Reply via email to