欧美日韩一区二区三区四区不卡,日韩欧美视频一区二区三区四区,久久精品欧美一区二区三区不卡,国产精品久久久乱弄

咨詢電話:186 7916 6165 咨詢電話:186 7916 6165 (微信同號)    在線QQ:181796286
NEWS BLOG ·
學無止境
關注開優網絡 關注前沿
C# string字符串的截取、移除、替換、插入
ASP.NET Repeater遁環綁定XML

Asp.net Mvc 與WebForm 混合開發

發表日期:2018-08-14    文章編輯:    瀏覽次數:4750    標簽:

根據項目實際需求,有時候會想在項目中實現Asp.net Mvc與Webform 混合開發,比如前臺框架用MVC,后臺框架用WebForm。其實要是實現也很簡單,如下:
(1)在MVC 中使用Webform

1.新建MVC 項目。

2.設置路由:

public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.aspx/{*pathInfo}");
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

routes.MapRoute(
    "Default", // Route name
    "{controller}/{action}/{id}", // URL with parameters
    new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}

3.新建WebForms文件夾,添加新的aspx頁面,



4.點擊瀏覽即可。

(2)WebForm 中使用Mvc

 (1)新建WebForm 項目

  (2)添加三個引用

   

(3)配置webconfig文件

 修改三個地方,其實可以從原來的mvc 項目中拷貝過來

 第一個是:
<compilation debug="false">

 <assemblies>
   <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
   <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
   <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
   <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

   <add assembly="System.Web.Abstractions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
   <add assembly="System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
   <add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
 </assemblies>

</compilation>

第二個是:
<pages>
<namespaces>
<add namespace="System.Web.Mvc"/>
<add namespace="System.Web.Mvc.Ajax"/>
<add namespace="System.Web.Mvc.Html"/>
<add namespace="System.Web.Routing"/>
<add namespace="System.Linq"/>
<add namespace="System.Collections.Generic"/>
</namespaces>

<controls>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</controls>

</pages>

第三個:
<httpModules>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

</httpModules>

(4)復制文件

復制asp.net mvc中的  Content,Controllers,Scripts,Views到WebForm項目文件中

(5)設置路由

在global.asax文件中設置如下:
public static void RegisterRoutes(RouteCollection routes)
{
   
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

    routes.IgnoreRoute("{resource}.aspx/{*pathInfo}");

    routes.MapRoute(
        "Default", // Route name
        "{controller}/{action}/{id}", // URL with parameters
        new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
    );

}


protected void Session_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}

這樣就OK了。如果生成失敗,那是因為AccountController拷貝后應該還要添加相關引用。
主站蜘蛛池模板: 乌海市| 涡阳县| 鹤岗市| 广州市| 伊春市| 余姚市| 阳江市| 十堰市| 鄂尔多斯市| 衡阳市| 芷江| 寻甸| 项城市| 湘潭县| 绥芬河市| 邵阳县| 托克托县| 永嘉县| 宁强县| 武汉市| 五原县| 嘉善县| 桦南县| 平原县| 秭归县| 马公市| 英山县| 易门县| 昌吉市| 四子王旗| 富裕县| 凤凰县| 彰武县| 定州市| 周宁县| 潍坊市| 东源县| 鄂托克前旗| 临澧县| 京山县| 台南市|