FluentNHibernate和NuGet,NH版本的问题

epi*_*tka 17 fluent-nhibernate nuget

我刚刚更新了我的项目以使用NuGet进行外部引用.我添加了对NHibernate的引用,它添加了NH的所有其他依赖项.比我添加了FluentNHibernate.为NH和Fluent下载的NH版本不匹配.NuGet显示FNH的版本为1.1.1.694,依赖于NH版本3.0.0.0.2001,而NH显示为版本3.0.0.4000.

当我运行应用程序时,我收到此消息:

无法加载文件或程序集'NHibernate,Version = 3.0.0.2001,Culture = neutral,PublicKeyToken = aa95f207798dfdb4'或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(HRESULT异常:0x80131040)

我也尝试从FNH网站下载,但这表明FNH上的版本是1.1.0.685,这取决于2.1.2.4000.

你能修复NuGet,还是应该在配置中使用BindingRedirect?

dav*_*owl 18

你很幸运!NuGet只有​​这个场景的命令(我们计划在未来更加自动化http://blog.davidebbo.com/2011/01/nuget-versioning-part-3-unification-via.html).首先构建您的项目,并从包管理器控制台类型:

PM> Add-BindingRedirect
Run Code Online (Sandbox Code Playgroud)

它会将最小的绑定重定向集添加到配置中以使一切正常运行.

  • 我根本不喜欢这个,包管理员需要在此! (4认同)