1

我有一个项目查找同一程序集的多个版本的问题。System.Web.Mvc例如:

在此处输入图像描述

我想确保我们的 MVC 项目永远不会dll从任何地方找到这样一个过时的东西,除了 NuGet 源。

我意识到从系统中删除冲突版本并不是一个好主意,因为很多应用程序可能依赖于它们。例如,这个发现于C:\Program Files (x86)

更新:

由于我们使用 NuGet,因此我更改了:

Project > Properties > Build > Output > Output path:C:\Temp\Drop

在每个项目中(我们也有一些可移植区域类库项目),然后

Project > Properties > Reference Paths并添加C:\Temp\Drop

问题就消失了。

这是正确的方法还是我只是在这里打开另一个关于蠕虫的罐头?

4

1 回答 1

2

查看以下有关程序集绑定和探测的文章,它非常好:

MSDN - 装配探测

也检查这篇文章

有一个完整的层次结构用于查找程序集,对于强命名程序集 GAC 将是第一位的,在您的情况下,您使用的是强命名程序集。如文章中所述,您应该能够在运行时将您的应用程序定向到正确的程序集版本

于 2014-10-10T06:58:03.733 回答