У меня была запущена и работала система, в которой использовалась предварительная версия Fluent NHibernate v0.0.1.0 вместе с NHibernate 2.1.0.4000 и NHibernate.Linq 1.0.0.0.
Я только что вставил новые библиотеки DLL Fluent NHibernate RTM и исправил код для критических изменений, но у меня возникает пара проблем, зависящих от того, как я пытаюсь реализовать.
1) Если я не изменю dll NHibernate на ту, которая поставляется с FluentNHibernate, я получаю сообщение об ошибке с жалобой на то, что Fluent NHibernate нацелен на другую версию NHibernate, хотя обе имеют одинаковый номер версии.
Сообщение об исключении выглядит следующим образом: 'Assembly' FluentNHibernate, Version = 1.0.0.593, Culture = нейтральный, PublicKeyToken = 8aa435e3cb308880 'использует' NHibernate, Version = 2.1.0.4000, Culture = нейтральный, PublicKeyToken = aa95f207798dfdb4 ', версия которого выше, чем указанная сборка 'NHibernate, Version = 2.0.1.4000, Culture = нейтральный, PublicKeyToken = aa95f207798dfdb4'
2) Если я изменю dll NHibernate на ту, которая поставляется с FluentNHibernate RTM, моя программа сломается при попытке разрешить сборки в классе, который использует NHibernate.Linq. Он также жалуется на обнаруженные конфликты между зависимыми версиями одной и той же сборки.
Если NHibernate.Linq 1.0.0.0 не может использоваться с Fluent NHibernate, тогда это нормально, и я найду способ обойти это, но мне интересно, нашел ли кто-нибудь способ для них хорошо играть вместе и почему, по-видимому, есть два расходящиеся версии NHibernate с тем же номером версии.
Спасибо,