2014-01-23 45 views
0

我有一個現有的MVC項目,我已升級到MVC 5。我已經使用Visual Studio包管理器來更新現有的軟件包安裝。MVC 5-應用程序顯示System.Web.WebPages.Html.HtmlHelper控件的錯誤消息像viewbag

'System.Web.WebPages.Html.HtmlHelper' does not contain a definition for 'BeginForm' and no extension method 'BeginForm' 

其他控件(如動作鏈接)的問題也是如此。我遵循升級MVC項目提到的方法,並做了必要的webconfig修改。應用程序不顯示intellisence。如果我保持視圖打開,則會拋出錯誤。如果關閉視圖並構建應用程序,則不會有任何錯誤引發錯誤。正常運行。

請仔細閱讀帖子,然後將其標記爲類似的現有帖子。我已經嘗試了幾種在stackoverflow上提供的解決方案。

我提的幾個環節 System.Web.Mvc.HtmlHelper' does not contain a definition for 'ActionLink' stackoverflow.com/questions/12041633/razor-views-not-seeing-system-web-mvc-htmlhelper

http://www.asp.net/mvc/tutorials/mvc-5/how-to-upgrade-an-aspnet-mvc-4-and-web-api-project-to-aspnet-mvc-5-and-web-api-2

請你究竟是什麼引導我缺少任何參考?

回答

-5

好的,我已經修復它在appsetting它應該有一個標記

網頁版本應該是3.0.0.0

網頁和剃刀版本應該是3.0不3.1

MVC 5.1.0.0

你需要指定相關的裝配,適用於舊代碼

請勿使用升級包命令。使用管理NuGet軟件包管理器界面來更新所需的穩定版本。

mvc5的最新受支持版本應該用於所有正在使用的軟件包。

+0

你能更具體地瞭解你到底在做什麼以及在哪裏? – atdrago

1

你應該有以下在你的web.config文件組件(在你的瀏覽文件夾):

在configSections標籤:

<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" /> 
    <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" /> 
</sectionGroup> 

在system.web.webPages.razor標籤:

<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
<pages pageBaseType="System.Web.Mvc.WebViewPage"> 
    <namespaces> 
    <add namespace="System.Web.Mvc" /> 
    <add namespace="System.Web.Mvc.Ajax" /> 
    <add namespace="System.Web.Mvc.Html" /> 
    <add namespace="System.Web.Optimization"/> 
    <add namespace="System.Web.Routing" /> 
    <add namespace="GildenhuisHoboken2014" /> 
    </namespaces> 
</pages> 

+0

當我更新我更改的版本System.Web.WebPages.Razor 3.1.0.0在更新的System.Web.Mvc版本5.1.0.0期間安裝。 但我沒有GildenhuisHoboken2014在我的webconfig是什麼? 我已經在上面的升級鏈接中提到了它, – gt3

+0

我正在嘗試VS2013。我已經更新了幾乎所有的軟件包,但不知何故,它仍然顯示System.Web.WebPages.Html.HtmlHelper錯誤 – gt3

+0

GildenhuisHoboken2014是我的變數。我會繼續尋找。 –