簡體   English   中英

將Asp.Net MVC 4添加到Asp.Net Webforms 4.5 Web應用程序

[英]Adding Asp.Net MVC 4 to an Asp.Net Webforms 4.5 web application

我試圖按照以下說明將Asp.Net MVC 4添加到Asp.Net Webforms 4.5 Web應用程序中:

http://www.hanselman.com/blog/IntegratingASPNETMVC3IntoExistingUpgradedASPNET4WebFormsApplications.aspx

不同之處在於,本文涵蓋將Asp.Net MVC 3添加到Asp.Net Webforms 4.0應用程序中。

為了構建應用程序,我還必須添加以下nuget包:

  • Microsoft.AspNet.Web.Optimization
  • Microsoft.AspNet.WebApi.WebHost
  • Microsoft.AspNet.WebPages

這些軟件包以及所有依賴項。 (由於在asp.net mvc 4模板中有一些新內容,例如捆綁和Web Api,我認為這些是必需的。)

運行該應用程序時,我可以訪問我的webforms default.aspx頁面。 但是,當嘗試訪問mvc路由/ Home / Index /時,出現以下黃色死亡屏幕:

編譯錯誤

說明:編譯服務於此請求所需的資源期間發生錯誤。 請查看以下特定的錯誤詳細信息,並適當地修改您的源代碼。

編譯器錯誤消息:CS0103:名稱'BeginContext'在當前上下文中不存在

源錯誤:

第50行:#line默認行第51行:#line隱藏行52:BeginContext(“〜/ Views / Home / Index.cshtml”,39,2,true); 第53行:第54行:WriteLiteral(“ \\ r \\ n”);

源文件:c:\\ Users \\ deap \\ AppData \\ Local \\ Temp \\ Temporary ASP.NET Files \\ root \\ 4e75f435 \\ a63aa726 \\ App_Web_index.cshtml.a8d08dba.m4g9z3sv.0.cs行:52

有誰知道發生了什么,我需要做什么才能使其運行?

經過一夜安眠后,我決定將我的web.config與復制文件夾的虛擬mvc Web應用程序進行比較。

更改以下內容:

<dependentAssembly>
    <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
    <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>

變成:

<dependentAssembly>
    <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
    <bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>

解決了我的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM