2015-04-18 70 views
1

當我創建新項目時,創建新控件沒有任何問題。但是當我在Visual Studios 2012中使用TFS獲取最新的代碼時。所有代碼都是更新的,我無法創建新的控制器。這是我從VS無法在VS 2012中創建控制器MVC 4.0

警報錯誤

無法加載文件或assembly'System.web.mvc,vesion = 3.0.0.0,文化=中立,pulbickeytoken = 31bf3856ad364e35' 或更多的該系統無法找到文件指定。

回答

0

看起來像是缺少對System.Web.Mvc的引用。到達項目的「參考」部分並添加缺失的參考。

或者,您可以添加相關的System.Web.Mvc.Extensions Mvc 4 NuGet包,它應該添加您的解決方案可能丟失的所有引用。

0

您的問題與MVC-4的錯誤和您的標記之間存在差異。因此假設您的目標是使用MVC 4.

在Visual Studio中,通過工具 - >程序包管理器 - >程序包管理器控制檯轉到程序包管理器控制檯。,然後運行以下命令,其源代碼爲:nuget.org,在Entity Framework問題中由Shiva回答。 編輯:

  1. 卸載以前版本的MVC 3.0和所有引用。

    卸載,包裝Microsoft.AspNet.Mv -Force

  2. 升級到MVC 4.0匹配您添加到 問題標籤

    安裝,包裝Microsoft.AspNet.Mvc - 版本4.0.30506

  3. 檢查Entity Framework已安裝。通過右鍵單擊項目文件並在文本編輯器(如記事本++)中打開它,檢查項目文件(* .csproj,* .vbproj)引用。

  4. Rebuild or Clean(可選)您的項目。當你有完整的項目編譯例如從TFS獲取代碼時,它將檢查所有的引用並拋出這個異常。當你再次編譯這個項目時,這個錯誤很可能不會出現,因爲你沒有進行完整的編譯。

  5. 檢查項目文件的TFS版本是否有差異。

0

我得到了同樣的問題,原因是「安全更新」。此更新之後對System.Web.Mvc.dll的項目引用不再解決,因爲System.Web.Mvc.dll的程序集版本增加了。

有兩種方法可以解決此問題,方法是安裝nuguet程序包或手動更新對System.Web.MVC的引用。DLL(不使用GAC中的一個)

本博客文章包含了詳細的解釋: http://blogs.msdn.com/b/webdev/archive/2014/10/16/microsoft-asp-net-mvc-security-update-broke-my-build.aspx