汇编引用存在问题,更新nuget软件包时发生了猜测。
我从一个不依赖于大多数依赖项(拓扑排序)的项目开始,重新安装所有nuget包并增加nuspec
文件中的版本以及Ninject引用的所有packages.config
文件。 2.0
<package id="Ninject" version="3.2.2.0" targetFramework="net462" />
<package id="Ninject.Extensions.Conventions" version="3.2.0.0" targetFramework="net462" />
但不起作用。
运行单元测试时仍然出错,似乎是一个引用其他版本的Ninject
的程序集单元测试失败:
消息:System.IO.FileLoadException:无法加载文件或程序集&#39; Ninject,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = c7192dc5380945e7&#39;或其中一个依赖项。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040) ---- System.IO.FileLoadException:无法加载文件或程序集&#39; Ninject,Version = 3.2.0.0,Culture = neutral,PublicKeyToken = c7192dc5380945e7&#39;或其中一个依赖项。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)
如何获取有关此问题的更多信息(谁调用版本4.0.0.0或3.2.0.0)或解决此问题?
提前致谢。
答案 0 :(得分:1)
我遇到了同样的问题,我将项目从使用Ninject版本3.2.2.0的4.5升级到4.6.2,并且得到了相同的错误消息。
帮助我的是,我将Ninject软件包升级到了最新版本(3.3.4)和Ninject.Web.Common(3.3.2)。
警告!当我这样做时,我的NinjectWebCommon.cs文件被重新生成,并且丢失了所有依赖项注入设置,但是一旦从源代码管理中恢复了它,一切都很好。
答案 1 :(得分:0)