Quantcast
Channel: VITO小舖 - ASP.NET
Viewing all articles
Browse latest Browse all 41

MVC Routing

$
0
0

Routing 是用來定義網址的格式,它是在 ASP.NET 3.5 被加入的新功能,在過去,要實現這個功能,可能要自已撰寫程式,或者使用第三方元件。 有了這個內建功能,要使用 Routing 的好處,就變的方便許多。

在 Routing 規則集之中,第一個被比對成功的規則就會直接被採用

認識 MVC Routing

當 IIS 收到一個 MVC 要求,會先交由 UrlRoutingModule (一個 HttpModule) 處理。 然後在交給 MvcRouteHandler 依據 URL 的內容以決定對應的 controller 和 action method。

Routing 的組成

底下這個範例是預設的網址樣式:


routes.MapRoute(
"Default", // 路由名稱
"{controller}/{action}/{id}" // URL 樣式
);
  • 每一個 {} 稱為 placeholder
  • 由 / 分開的段落則稱之為 segment
  • placeholder 中的名稱,則稱路由參數 (route parameters)
  • 一個 segment 允許放多個 placeholder ,如:

    routes.MapRoute(
    "Route1",
    "{language}-{country}/{route}"
    );

設定 Routing 的預設值

h2_XXXXX


public static Route MapRoute(this RouteCollection routes, string name, string url);
public static Route MapRoute(this RouteCollection routes, string name, string url, object defaults);
public static Route MapRoute(this RouteCollection routes, string name, string url, object defaults, object constraints);
...

Viewing all articles
Browse latest Browse all 41

Trending Articles