Подтвердить что ты не робот

Какая версия свободного nhibernate совместима с nhibernate 3.2

Я вижу, когда я устанавливаю свободно nhibernate 1.2 из Nuget, он загружает nhibernate 3.1. Если я хочу использовать nhibernate 3.2, как бы это сделать с помощью nuget и он совместим с текущим nhibernate 1.2?

4b9b3361

Ответ 1

В настоящее время пакет FluentNHibernate из официального источника пакета NuGet зависит от NHibernate.Castle 3.1 (в настоящее время еще нет новой версии), что, в свою очередь, зависит от NHibernate 3.1 (точная версия, а не 3.1 или новее). Таким образом, NuGet регистрирует зависимость от NHibernate 3.1 при установке FluentNHibernate.

Итак, нижняя строка: вы не можете, пока пакет FluentNHibernate не обновится.

Самый практичный способ - получить последний исходный код FluentNHibernate и построить его против NHibernate 3.2. Я тестировал это и, похоже, все отлично. Возможно, вы даже сможете использовать переадресацию связывания сборок, но я не тестировал это.

В качестве альтернативы вы можете дождаться перехода NHibernate 3.2 на GA (final) и FluentNHibernate, но, конечно, это не очень удовлетворительный ответ.

Ответ 2

Если вы используете консоль диспетчера пакетов Nuget вместо GUI для получения пакета (Install-Package FluentNHibernate), вы получите версию 1.3.0.717, которая совместима с NHibernate 3.2 enter image description here

Я попробовал и отлично работает для меня.

Ответ 3

Здесь вы можете прочитать о планах по выпуску FluentNHibernate для 3.2GA в ближайшее время и предлагаемому обходному пути с использованием атрибутов

http://groups.google.com/group/fluent-nhibernate/browse_thread/thread/8e782e45ed9ba647

Я получил свою работу, используя

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  <dependentAssembly>
    <assemblyIdentity name="NHibernate"
                      publicKeyToken="aa95f207798dfdb4"
                      culture="neutral" />
    <bindingRedirect oldVersion="3.1.0.4000"
                     newVersion="3.2.0.4000"/>
  </dependentAssembly>
</assemblyBinding>