3

我刚刚在本地机器上安装了Visual Studio 11和MVC 4测试版。但是,无论何时我打开一个MVC 3项目(我想保留为MVC 3),所有引用都已更新为版本4 DLL。当然,它不应该那样做?MVC 3引用自动更新到MVC 4

的MVC 3项目在Visual Studio 2010中打开

UPDATE:

我在MVC 3项目,我可以看到所有的地方引用的.csproj的文件看,但他们不指定路径。如果没有指定路径,它只是选择最新版本的DLL?

回答

2

如下图所示,您可以指定在包含属性需要装配的版本:

<Reference Include="System.Web.Mvc, Version=3.0.0.0" /> 

没有指定路径或版本,Visual Studio将匹配具有相同名称的任何组件。

您可以通过以下链接了解更多关于在Visual Studio中的引用解析:

Visual Studio Integration (MSBuild)

ResolveAssemblyReference Task

0

我发现我所有的项目文件(.csproj的)在我的解决方案有这个:

<Reference Include="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"> 
    <SpecificVersion>False</SpecificVersion> 
    <HintPath>C:\Program Files\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies\System.Web.Mvc.dll</HintPath> 
</Reference> 

要解决这个问题,我只需要删除SpecificVersion和HintPath标记从他们。