質問

例に示すように、ステートレスセッションを使用して、名前付きクエリで列挙可能な方法を使用しようとする場合:

http://www.nhforge.org/doc/nh/en/#batch-statelesssession

私はnotSupportedexceptionを見ています。スタックトレースは次のとおりです。

System.NotSupportedException: Specified method is not supported.
at NHibernate.Impl.StatelessSessionImpl.Enumerable(String query, QueryParameters parameters)
at NHibernate.Impl.QueryImpl.Enumerable()

これが私のコードのスニペットです:

IStatelessSession statelessSession = sessionFactory.OpenStatelessSession();
var fileLines = statelessSession.GetNamedQuery("GetLinesByFileId")
.SetInt32("FileIdInput", fileId).Enumerable<FileLineEntity>();

指定されたクエリ、getlinesbyfileidは、以下のようにHBMで定義されています。

<query name="GetLinesByFileId" cacheable="false" read-only="true">
    <![CDATA[
        from FileLineEntity lineItem where lineItem.FileId=:FileIdInput 
      ]]>
  </query>

私がここで見逃していることについて何か提案はありますか?

役に立ちましたか?

解決

ドキュメントは間違っています。また、それを見ることで、Hibernate(Java)からコピーされていることがわかります。

使用 List 代わりにメソッド。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top