2010-10-19 66 views
9

我剛將我的ASP MVC 3應用程序從預覽升級到測試版。 在預覽中一切正常,但只要我升級奇怪的事情開始發生。從ASP MVC 3預覽版1升級到beta版時的複雜功能

我收到此錯誤信息:

編譯器錯誤信息:CS0234:該 類型或命名空間名稱「助手」不 沒有命名空間 「System.Web程序」存在(是否缺少一個 程序集參考?)

源文件:c:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Temporary ASP.NET Files \ root \ 1512250b \ 962d050c \ App_Web_index.cshtml.a8d08dba.kncxiw31.0.cs Line :19

我試圖徹底重建應用程序,並清除臨時的asp.net文件,但沒有任何工作。我的解決方案構建成功,建設時無錯誤。但是當我嘗試打開網站時,出現此錯誤。

這些是我引用的DLL:

alt text

版本信息:微軟.NET框架 版本:4.0.30319; ASP.NET 版本:4.0.30319.1

錯誤消息的截圖:

alt text

有什麼想法?

+0

您是使用附加的調試器發佈網站還是運行它? – 2010-10-19 16:50:40

+0

現在即時通過調試器運行它,但即時計劃發佈它。 – Martin 2010-10-19 16:52:04

+0

我也嘗試卸載ASP MVC 2和3,然後使用Microsoft Web平臺安裝程序重新安裝ASP MVC 3,但仍然收到相同的錯誤消息。 – Martin 2010-10-19 17:19:35

回答

14

經過激烈的搜索,我在ASP.NET MVC 3 release notes找到了一些答案。有一個叫部分升級的ASP.NET MVC 2項目到ASP.NET MVC 3,告訴你該怎麼做:

兩個以下行添加到您的<assemblies>部分在web.config

<add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, 
    PublicKeyToken=31BF3856AD364E35" /> 

<add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, 
    PublicKeyToken=31BF3856AD364E35" /> 
+0

感謝您的鏈接。我有同樣的問題。我當時通過創建一個新項目解決了這個問題,並簡單地將我所有的源代碼導入到其中。 – Preets 2010-10-20 16:10:40

2

確保System.Web.Mvc集結點到正確的版本:

C:\Program Files\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies\System.Web.Mvc.dll 

和System.Web.Helpers也:

C:\Program Files\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies\System.Web.Helpers.dll 

在Beta 3中,System.Web.Helpers是單獨下載,確保你已經安裝了AspNetWebPages.msi

+0

謝謝,但我的System.Web.Mvc指向'c:\ Program Files \ Microsoft ASP.NET \ ASP.NET MVC 3 \ Assemblies \ System.Web.Mvc.dll'和System.Web.Helpers指向' C:\ Program Files \ Microsoft ASP.NET \ ASP.NET Web Pages \ v1.0 \ Assemblies \ System.Web.Helpers.dll。所以它看起來也很好,但我會嘗試重新安裝'AspNetWebPages.msi'包。 – Martin 2010-10-20 15:37:02

10

問題是您需要在System.Web.Helpers參考中將Copy Local屬性設置爲true。

+1

+1複製本地是一種痛苦 – yoozer8 2012-08-10 13:52:43

相關問題