Ошибка версии валидатора fluentnhibernate и nhibernate

У нас есть проект, использующий FluentNibernate для сопоставления сущностей. Теперь мне нужно добавить проверку формата на эти карты. Для Nullable, Length и т.п. мы в настоящее время используем сопоставления. Я добавил NHibernate Validator в проект, но получил ошибку времени компиляции по поводу необходимости NHibernate версии 2.1.2.4000. Поэтому я обновился до этой версии только для того, чтобы получить сообщение об ошибке во время выполнения о том, что он не может найти NHibernate 2.1.0.4000. Могу ли я написать методы расширения для проверки с помощью FluentNibernate? Нужно ли перекомпилировать обе версии, используя одну и ту же версию NHibernate? Предпочтительным методом было бы использовать выпуск этих. Любое другое устройство будет оценено.

3 ответа

Решение

1) Перекомпиляция является опцией, это позволит вам использовать оба из них без проблем сборки.

2) Другим вариантом будет перенаправление привязки сборки, при любых вызовах более ранней версии NHibernate вы можете принудительно перейти к той версии, которая у вас есть. Вы можете сделать это с помощью app.conifg / web.conifg

(Вы можете найти больше об этом здесь)

<configuration>
       <runtime>
          <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
             <dependentAssembly>
                <assemblyIdentity name="NHibernate" publicKeyToken="aa95f207798dfdb4"/>
                <bindingRedirect oldVersion="2.1.0.4000" newVersion="2.1.2.4000"/>
             </dependentAssembly>
          </assemblyBinding>
       </runtime>
</configuration>

Не то чтобы это решило вашу проблему, но вы рассматривали FluentValidation. Тем не менее, звучит так, как будто у вас есть ссылка где-то, которая запрашивает определенную версию DLL.

Последние версии, NHibernate.Validator 1.2.0 CR1 и FluentNHibernate 1.0.0.632, обе созданы для NHibernate 2.1.2.4000.

Чтобы получить последнюю версию FluentNHibernate, перейдите на сервер сборки по адресу CodeBetter.com.

Чтобы получить последнюю версию NHibernate.Validator, перейдите на http://nhibernate.info/.

Другие вопросы по тегам