91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET中如何使用MVC路由

發布時間:2021-08-11 15:34:31 來源:億速云 閱讀:142 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關ASP.NET中如何使用MVC路由,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

使用默認ASP.NET MVC路由表

當創建好一個mvc應用后,應用已經被配置好可以用asp.net routing了。ASP.NET MVC路由在兩個地方被激發。

一、asp.net routing在web.config中被激活,有關route的配置有四個配置節:system.web.httpModules , system.web.httpHandlers , system.webserver.modules, the system.webserver.handlers,刪除這些配置節時要小心,因為沒有它們routing將不再工作。

二、更重要的是,在global.asax文件中已經創建了路由表,global.asax是一個包含了asp.net應用生命周期內事件句柄的特殊文件。路由表在Application Start 事件中被創建。

using System;  using System.Collections.Generic;  using System.Linq;  using System.Web;  using System.Web.Mvc;  using System.Web.Routing;   namespace MvcApplication1  {      // Note: For instructions on enabling IIS6 or IIS7 classic mode,       // visit http://go.microsoft.com/?LinkId=9394801       public class MvcApplication : System.Web.HttpApplication      {          public static void RegisterRoutes(RouteCollection routes)          {              routes.IgnoreRoute("{resource}.axd/{*pathInfo}");               routes.MapRoute(                  "Default",                                              // Route name                  "{controller}/{action}/{id}",                           // URL with parameters                  new { controller = "Home", action = "Index", id = "" } // Parameter defaults              );           }           protected void Application_Start()          {              RegisterRoutes(RouteTable.Routes);          }      }  }

當程序運行后,Application_Start() 方法被調用,同時調用方法內的RegisterRoutes() 方法。這個方法創建了路由表。

默認的ASP.NET MVC路由表中只含有一個叫做default的路由。這個默認路由把url拆分成三個部分分別對應controller,action和View。

當請求URL:/Home/Index/3時,下列代碼執行:HomeController.Index(3)。

如果不指定controller,則默認為Home,不指定Action則默認為Index,不指定參數則默認為空。

我們將通過例子來看一下到底默認路由是怎么把URl映射到controller和action的。想象我們在地址欄中輸入了如下URL:

/Home

由于默認action為Index,所以下面的方法被調用

using System.Web.Mvc;   namespace MvcApplication1.Controllers  {      [HandleError]      public class HomeController : Controller      {          public ActionResult Index(string id)          {              return View();          }      }  }

這個方法接受一個字符串類型的id參數,上面的URL執行了這個方法,傳入一個空的id。

由于mvc框架引用controller actions的方式,/Home同時也會觸發下列事件

using System.Web.Mvc;   namespace MvcApplication1.Controllers  {      [HandleError]      public class HomeController : Controller      {          public ActionResult Index()          {              return View();          }      }  }

這個方法不接受參數,/Home將觸發這個Index(),同時/Home/Index/3也會調用這個方法,id參數將被忽略。

/Home也會與下面的方法匹配

using System.Web.Mvc;   namespace MvcApplication1.Controllers  {      [HandleError]      public class HomeController : Controller      {          public ActionResult Index(int? id)          {              return View();          }      }  }

該方法接受一個int類型的參數id,因為這個參數可以為null,該方法將被調用而不會產生任何錯誤。

***調用下面的方法,這里會引發一個異常

using System.Web.Mvc;   namespace MvcApplication1.Controllers  {      [HandleError]      public class HomeController : Controller      {          public ActionResult Index(int id)          {              return View();          }      }  }

因為這個參數是不可以為null的。

看完上述內容,你們對ASP.NET中如何使用MVC路由有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

深水埗区| 苏州市| 贡山| 容城县| 河北省| 伽师县| 治县。| 瓦房店市| 江北区| 北票市| 乐山市| 伊吾县| 来宾市| 类乌齐县| 通榆县| 且末县| 三亚市| 平顺县| 渑池县| 津市市| 景泰县| 嵊泗县| 九江市| 光山县| 武冈市| 阿拉善左旗| 辽阳市| 澳门| 通江县| 读书| 阳江市| 通城县| 浦城县| 资讯| 阿坝| 临沧市| 广东省| 黄大仙区| 博白县| 山阴县| 菏泽市|