2016-07-08 7 views
0

どうしたのですか?nHibernate結果トランスフォーマエラー

クエリをSSMSのスクリプトに切り貼りして(適切にクエリとしてフォーマットする)、コードはSQLでエラーなく実行されます。 それで問題は返事にあります。

'yourordernumber'は、hbm.xlmマッピングの文字列として定義され、SQL Serverからvarcharとして返されます。

もう2つ質問があります。エラー例外メッセージに、クエリスクリプトへの単純な切り取りと貼り付けのテキストが含まれていないのはなぜですか?そして、なぜエラーテキストが実際にそれに問題があったか教えてもらえませんか?

NHibernate.Exceptions.GenericADOException was unhandled by user code 
    HResult=-2146232832 
    Message=could not execute query 
[ exec OrderLinUpdate 
     @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] ] 
    Name:Mode - Value:Add Name:OrderHdrRecid - Value:51 Name:LinNo - Value:-1 Name:ItemRecid - Value:97 Name:QtyRequested - Value:1 Name:LoadIDsList - Value:OS 001.0001.1??20300 Name:ItemSelectMethod - Value:SearchLoadID Name:ModifiedBy - Value:0 
[SQL: exec OrderLinUpdate 
     @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected]] 
    Source=NHibernate 
    SqlString=exec OrderLinUpdate 
     @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
     , @[email protected] 
    StackTrace: 
     at NHibernate.Loader.Loader.DoList(ISessionImplementor session, QueryParameters queryParameters, IResultTransformer forcedResultTransformer) 
     at NHibernate.Loader.Loader.ListIgnoreQueryCache(ISessionImplementor session, QueryParameters queryParameters) 
     at NHibernate.Loader.Loader.List(ISessionImplementor session, QueryParameters queryParameters, ISet`1 querySpaces, IType[] resultTypes) 
     at NHibernate.Impl.SessionImpl.ListCustomQuery(ICustomQuery customQuery, QueryParameters queryParameters, IList results) 
     at NHibernate.Impl.AbstractSessionImpl.List(NativeSQLQuerySpecification spec, QueryParameters queryParameters, IList results) 
     at NHibernate.Impl.AbstractSessionImpl.List(NativeSQLQuerySpecification spec, QueryParameters queryParameters) 
     at NHibernate.Impl.SqlQueryImpl.List() 
     at NHibernate.Impl.AbstractQueryImpl.UniqueResult() 
     at TKOSMERP.Controllers.ERP.ERPController.OrderLinUpdate(FormCollection pd) in C:\_TKOSVNRepos\TKOSM_ERP\TKOSM_ERP\Controllers\ERP\ERPController_ODELine.cs:line 36 
     at lambda_method(Closure , ControllerBase , Object[]) 
     at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) 
     at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters) 
     at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters) 
     at System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState) 
     at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult) 
     at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase`1.End() 
     at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult) 
     at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3d() 
     at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f() 
    InnerException: 
     HResult=-2146233080 
     Message=yourordernumber 
     Source=System.Data 
     StackTrace: 
      at System.Data.ProviderBase.FieldNameLookup.GetOrdinal(String fieldName) 
      at System.Data.SqlClient.SqlDataReader.GetOrdinal(String name) 
      at NHibernate.Driver.NHybridDataReader.GetOrdinal(String name) 
      at NHibernate.Type.NullableType.NullSafeGet(IDataReader rs, String name) 
      at NHibernate.Type.NullableType.NullSafeGet(IDataReader rs, String name, ISessionImplementor session, Object owner) 
      at NHibernate.Loader.Custom.CustomLoader.ScalarResultColumnProcessor.Extract(Object[] data, IDataReader resultSet, ISessionImplementor session) 
      at NHibernate.Loader.Custom.CustomLoader.ResultRowProcessor.BuildResultRow(Object[] data, IDataReader resultSet, Boolean hasTransformer, ISessionImplementor session) 
      at NHibernate.Loader.Custom.CustomLoader.GetResultColumnOrRow(Object[] row, IResultTransformer resultTransformer, IDataReader rs, ISessionImplementor session) 
      at NHibernate.Loader.Loader.GetRowFromResultSet(IDataReader resultSet, ISessionImplementor session, QueryParameters queryParameters, LockMode[] lockModeArray, EntityKey optionalObjectKey, IList hydratedObjects, EntityKey[] keys, Boolean returnProxies, IResultTransformer forcedResultTransformer) 
      at NHibernate.Loader.Loader.DoQuery(ISessionImplementor session, QueryParameters queryParameters, Boolean returnProxies, IResultTransformer forcedResultTransformer) 
      at NHibernate.Loader.Loader.DoQueryAndInitializeNonLazyCollections(ISessionImplementor session, QueryParameters queryParameters, Boolean returnProxies, IResultTransformer forcedResultTransformer) 
      at NHibernate.Loader.Loader.DoList(ISessionImplementor session, QueryParameters queryParameters, IResultTransformer forcedResultTransformer) 
     InnerException: 

- 更新 私はそれを理解しました。クエリが実行されている間に追加のトラブルシューティング'select'ステートメントがありました。したがって、procは実際には2つのレコードセットを返していました。非常に一般的で識別可能な状況(1つの問題は1つの問題ではない)ですが、実行テキストでこの状況が特定されていますか?

答えて

0

私はそれを理解しました。実行中のクエリで追加のトラブルシューティング 'select'文がありました。したがって、procは実際には2つのレコードセットを返していました。非常に一般的で識別可能な状況(1つの問題は1つの問題ではない)ですが、実行テキストでこの状況が特定されていますか?

関連する問題