2

複数の SQL クエリを 1 つのマルチクエリにグループ化しています。クエリは正常に実行されます。の結果multiQuery.List()ArrayListですArrayLists。ここまでは順調ですね。ただし、個人ArrayListsにはタイプの値、{object[0]}または結果トランスフォーマーを使用する場合は、値が に設定されたプロパティが含まれますnull。ここでは SQL クエリのセット全体をリストすることはしませんが、これは私のマルチ クエリのようです。

        var multiQuery = Session.CreateMultiQuery()
            .Add<IList<DTO1>>("query1", query1)
            .Add<IList<DTO2>>("query2", query2)
            .Add(..)
            .Add(..);
        var results = multiQuery.List();

私の目にはかなり標準的ですが、残念ながら機能しません。Fluent nHibernate (1.2) の最新バージョンを使用しています。このバージョンにはデフォルトで nHibernate 3.1 が付属しており、マルチ クエリ内の SQL クエリはサポートされていません。

これを機能させるために、nHibernate 3.2 をプロジェクトに追加し、web.config に以下を追加しました。

        <dependentAssembly>
            <assemblyIdentity name="NHibernate"
                              publicKeyToken="aa95f207798dfdb4"
                              culture="neutral" />
            <bindingRedirect oldVersion="3.1.0.4000"
                             newVersion="3.2.0.4000"/>
        </dependentAssembly>
4

0 に答える 0