WebForm与MVC混用
步驟一:添加引用 -> 程序集 -> 擴(kuò)展 ->
- System.Web.Mvc ;
- System.Web.Razor;
- System.Web.WebPages;
- System.Web.Abstractions;
步驟二:mvc默認(rèn)目錄結(jié)構(gòu)
新建一個(gè)空的mvc項(xiàng)目, 將Controllers和Views文件夾全部拷貝過來(文件結(jié)構(gòu)和web.config這個(gè)很重要)
步驟三:修改配置文件web.config(不是Views文件夾下的)
1.在compilation節(jié)點(diǎn)下加入以下幾個(gè)assemblies :
<compilation debug="true" targetFramework="xx"> // 框架版本不用動(dòng)<assemblies> <add assembly="System.Web.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> <add assembly="System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> <add assembly="System.Web.WebPages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> </assemblies> </compilation>2. 還有一個(gè)需要注意的: 在configuration節(jié)點(diǎn)下加入? ?<modules runAllManagedModulesForAllRequests="true"/> ?
-- 不過我把這個(gè)去掉也調(diào)試成功了, ?這個(gè)貌似只是設(shè)置每個(gè)請(qǐng)求都會(huì)執(zhí)行Global.cs里邊的BeginRequest事件而已
<configuration><system.webServer><modules runAllManagedModulesForAllRequests="true"/></system.webServer>步驟四:路由設(shè)置
1. 可以按照mvc慣例 在App_Start文件夾中創(chuàng)建路由配置靜態(tài)方法;RouteConfig.cs文件代碼如下
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; // 引入命名空間 才能注冊(cè)mvc的路由 using System.Web.Routing; // 引入命名空間namespace webform {public class RouteConfig{public static void RegisterRoutes(RouteCollection routes){routes.IgnoreRoute("{resource}.axd/{*pathInfo}");routes.IgnoreRoute("{resource}.aspx/{*pathInfo}"); // web form訪問方式 routes.MapRoute(name: "Default",url: "{controller}/{action}/{id}",defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional });}} }2. 然后在Global.cs中注冊(cè)
public class Global : System.Web.HttpApplication{protected void Application_Start(object sender, EventArgs e){RouteConfig.RegisterRoutes(RouteTable.Routes);接著就可以寫你的controller和View
按照以上步驟調(diào)試成功 ╮(╯▽╰)╭?
?
?示例代碼:Asp.netMigrateToMVC.zip
ps: 個(gè)人對(duì)配置文件里的各個(gè)節(jié)點(diǎn)作用不是很理解, 就新建了一個(gè)空mvc項(xiàng)目然后把Views里邊的東西全部拷貝過來
?
轉(zhuǎn)載于:https://www.cnblogs.com/mushishi/p/4084365.html
總結(jié)
以上是生活随笔為你收集整理的WebForm与MVC混用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java除法结果带小数、进一法的实现 J
- 下一篇: poj 3020 Antenna Pla