nHibernate результат от нескольких запросов SQL пуст - PullRequest
2 голосов
/ 10 ноября 2011

Я группирую несколько SQL-запросов в одном мультизапросе.Запросы успешно выполнены.Результатом 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>
...