无法加载文件或程序集“NHibernate, Version=3.3.1.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4”。

3

我已经添加了最新版本的NHibernate,但是在编译时出现了这个错误。 请有经验的人告诉我如何解决这个问题。在web.config中,我也添加了以下内容:

 <assemblyIdentity name="NHibernate" publicKeyToken="aa95f207798dfdb4" culture="neutral" />
 <bindingRedirect oldVersion="0.0.0.0-3.0.0.4000" newVersion="4.0.0.4000" />
1个回答

3

看起来有项目/dll引用了版本为3.3的内容,所以您的重定向不足以解决问题:

<bindingRedirect oldVersion="0.0.0.0-3.0.0.4000" newVersion="4.0.0.4000" />

这应该可以工作:
 <bindingRedirect oldVersion="0.0.0.0-3.3.1.4000" newVersion="4.0.0.4000" />

请注意,现在的范围包括缺失的版本 3.3.1.4000 而不仅仅是 3.0.0.4000


这个工作正常,但另一个异常发生了 {"程序集“NHibernate.ByteCode.Castle,Version=2.1.0.1001,Culture=neutral,PublicKeyToken=aa95f207798dfdb4”的类型“NHibernate.ByteCode.Castle.ProxyFactory”的方法“PostInstantiate”没有实现。":"NHibernate.ByteCode.Castle.ProxyFactory"} - MaxMini
是的,看起来你需要应用很多绑定重定向...或者更好的方法——如果可能的话——重新构建这些项目以使用NHibernate 4.+。你展示的异常说:有一段代码需要NH3的某些部分(目前已删除)。必须重写和重建...不太好...但是...抱歉我没有更好的建议;( - Radim Köhler

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接