色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

不走尋常路:在WebForm中使用MVC

  問題場景:

  在改進(jìn)博客園博客后臺的過程中,有一個頁面我們想用ASP.NET MVC來寫。但我們不想通過設(shè)置<modules runAllManagedModulesForAllRequests="true"/>使用System.Web.Routing來處理請求,因?yàn)椴荒艽_定這是否會與我們現(xiàn)有的URL重寫產(chǎn)生沖突。我們只是想用Razor爽一下。

  解決思路:

  不改變ASP.NET管線的請求處理流程,請求還是正常到達(dá)一個.ASPx頁面,然后再轉(zhuǎn)手給ASP.NET MVC。也就是把WebForm作為一個中轉(zhuǎn)站。

  好處:

  在現(xiàn)有項(xiàng)目中,以最小的代價用上ASP.NET MVC。先品嘗一下Razor的美味。

  解決方法:

  用System.Web.Mvc.MvcHandler可以輕松搞定,請看下面Home.ASPx的代碼:

<%@ Page Language="C#" AutoEventWireup="true" %>
<script runat="server">
protected override void OnInit(EventArgs e)
{
System.Web.Routing.RequestContext requestContext
= new System.Web.Routing.RequestContext();
requestContext.HttpContext
= new HttpContextWrapper(Context);
requestContext.RouteData
= new System.Web.Routing.RouteData();
requestContext.RouteData.Values.Add(
"controller", "Home");
requestContext.RouteData.Values.Add(
"action", "Index");
IHttpHandler handler
= new System.Web.Mvc.MvcHandler(requestContext);
handler.ProcessRequest(Context);
}
</script>

NET技術(shù)不走尋常路:在WebForm中使用MVC,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 昭觉县| 塘沽区| 镇赉县| 合川市| 留坝县| 枞阳县| 团风县| 综艺| 崇左市| 榕江县| 遂平县| 商河县| 东至县| 乌兰县| 南乐县| 白银市| 沅江市| 炎陵县| 左权县| 卫辉市| 崇仁县| 榆林市| 军事| 乌拉特后旗| 阿坝| 微博| 濮阳市| 金湖县| 保康县| 绍兴县| 镇坪县| 宣汉县| 淄博市| 天峻县| 卫辉市| 扶余县| 曲靖市| 闸北区| 阜阳市| 天等县| 金阳县|