我试图了解,当我通过 nuget 添加 moq 时,它创建了一个包含以下信息的 app.config。
<dependentAssembly>
<assemblyIdentity name="Moq" publicKeyToken="69f491c39445e920" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.1309.801" newVersion="4.1.1309.801" />
</dependentAssembly>
问题是现在我遇到了这样的错误
无法加载文件或程序集“Moq,版本=4.1.1309.801,Culture=neutral,PublicKeyToken=69f491c39445e920”或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(来自 HRESULT 的异常:0x80131040)
原因基本上是我的起订量参考实际上有这个版本
4.1.1309.919
所以我很困惑,有没有办法解决这个问题?当然,一种快速而肮脏的方法是手动编辑 app.config 文件并放置正确的版本,即 .919,但我有很多。
我也不知道为什么当我的起订量参考显然是时我的 app.config 没有被 nuget 更新。
我不认为属性 newVersion 支持通配符之类的东西???
我知道如果我删除该文件,它会导致其他问题,因为我依赖于 moq 3.0,所以有这个文件意味着它仍然支持依赖引用并将其重定向到 4.1。
这是我的理解,但我不是 100% 确定,有人帮忙吗?