fluentnhibernate和NHibernate验证版本错误
-
19-09-2019 - |
题
我们使用FluentNibernate到实体映射有一个项目。现在我需要一些格式验证添加到这些地图。对于可为空,长度和这样的,我们目前正在使用的映射。我加了NHibernate的验证器项目,却收到一个编译时错误约需要NHibernate的版本2.1.2.4000。所以我升级到该版本只是为了获得一个运行时错误,指出它无法找到的NHibernate 2.1.0.4000。我可以写扩展方法做使用FluentNibernate验证?难道我都使用NHibernate的同一版本重新编译?优选的方法将是使用它们的释放。的任何其它装置将理解的。
解决方案
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的,去 nhibernate.info 。
不隶属于 StackOverflow