MVC 3"与.NET Framework 4不兼容"

Max*_*dov 9 .net visual-studio-2010 asp.net-mvc-3

不确定即使这是可能的,但我收到此错误消息:

System.Web.Mvc Version = 3.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35

发生在我之后:

  1. 安装了.NET 4和Visual Studio 2010 Professional
  2. 使用WPI + NuGet +一些groovy时髦的库包安装了VS 2010 SP1软件包
  3. 使用WPI 安装ASP.NET MVC 3(包括2011年4月的Tools Update)
  4. 使用Razor支持创建了一个新的空MVC 3 C#Web应用程序
  5. 无法构建它因为得到了这个错误: Warning 3 The primary reference "System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" could not be resolved because it has an indirect dependency on the framework assembly "System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" which could not be resolved in the currently targeted framework. ".NETFramework,Version=v4.0". To resolve this problem, either remove the reference "System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" or retarget your application to a framework version which contains "System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089".
  6. 检查项目是否以.NET 4为目标.确实如此
  7. 删除了对System.Web.Mvc的引用并尝试再次添加它(版本3.0)并得到上述错误消息(上面的屏幕截图)
  8. 尝试重新安装一些组件,以随机顺序执行前面的一些步骤,将一些处女鸡血洒在我的计算机上并一次又一次地重新启动Windows,这一切都无济于事.

我敢打赌解决方案是平庸的,但必须是周五下午.

顺便说一下,我还安装了VS 2008,MVC 1,MVC 2,所有.NET框架版本和功能.


更新1: 事实上,我对面向.NET 4的MVC 2项目存在完全相同的问题.


更新2:我觉得这是某种联系-我真的很想念System.Data.Linq.dll的文件夹中C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0(虽然System.Data.Linq.xml存在)

我重新安装了.NET 4框架,但没有解决问题.

Bon*_*nyT 1

手动卸载 MVC3、下载 Microsoft Web Platform Installer 并通过 WPI 重新安装 MVC3 - 这通常可以很好地确保满足先决条件。