Не уверен, как даже это могло быть возможно, но у меня есть это сообщение об ошибке:
Это случилось после того, как я:
- установлены .NET 4 и Visual Studio 2010 Professional
- установлен пакет VS 2010 с пакетом обновления 1 (SP1) с использованием WPI + NuGet + некоторые классные пакеты с классными библиотеками
- установлено ASP.NET MVC 3 (включая обновление средств от апреля 2011 г.) пакет с использованием WPI
- создал новое пустое веб-приложение MVC 3 C # с поддержкой Razor
- не удалось собрать его, потому что получил эту ошибку:
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".
- проверил, нацелен ли проект на .NET 4. Он делает
- удалил ссылку на System.Web.Mvc и попытался добавить ее снова (версия 3.0) и получил вышеупомянутое сообщение об ошибке (скриншот выше)
- попытался переустановить некоторые компоненты, выполнил некоторые из предыдущих шагов в случайном порядке, пролил кровь моего девственного цыпленка на мой компьютер и перезагружал Windows снова и снова, и все это безрезультатно.
Могу поспорить, что решение банально, но, должно быть, в пятницу.
Кстати, у меня также есть VS 2008, MVC 1, MVC 2, все версии .NET Framework установлены и работают.
Обновление 1:
На самом деле, у меня точно такая же проблема с MVC 2 проектами, нацеленными на .NET 4.
Обновление 2: Мне кажется, что это как-то связано - я действительно скучаю по System.Data.Linq.dll в папке C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0
(хотя System. Data.Linq.xml присутствует)
Я переустановил .NET 4 Framework, но это не решило проблему.