Route 類別

定義

提供用於定義路由及取得路由相關資訊的屬性和方法。

public ref class Route : System::Web::Routing::RouteBase
public class Route : System.Web.Routing.RouteBase
type Route = class
    inherit RouteBase
Public Class Route
Inherits RouteBase
繼承
衍生

範例

下列範例示範如何建立 Route 物件,並將其新增至 Routes 屬性。

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

public static void RegisterRoutes(RouteCollection routes)
{
    routes.Add(new Route
    (
         "Category/{action}/{categoryName}"
         , new CategoryRouteHandler()
    ));
}
Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
    RegisterRoutes(RouteTable.Routes)
End Sub

Shared Sub RegisterRoutes(ByVal routes As RouteCollection)
    Dim urlPattern As String
    Dim categoryRoute As Route
    
    urlPattern = "Category/{action}/{categoryName}"
    
    categoryRoute = New Route(urlPattern, New CategoryRouteHandler)
    
    routes.Add(categoryRoute)
End Sub

備註

類別 Route 可讓您指定如何在 ASP.NET 應用程式中處理路由。 您可以為每個想要對應至類別的 URL 模式建立 Route 物件,以處理對應至該模式的要求。 接著,您會將路由新增至 Routes 集合。 當應用程式收到要求時,ASP.NET 路由會逐一查看集合中的 Routes 路由,以尋找符合 URL 模式的第一個路由。

Url 屬性設定為 URL 模式。 URL 模式是由 HTTP 要求中的應用程式名稱之後的區段所組成。 例如,在 URL http://www.contoso.com/products/show/beverages 中,模式會套用至 products/show/beverages 。 具有三個區段的模式,例如 {controller}/{action}/{id} 符合 URL http://www.contoso.com/products/show/beverages 。 每個區段都是以 / 字元分隔。 當區段以大括弧括住 { (和 }) 時,區段會參考 URL 參數。 ASP.NET 路由會從要求擷取值,並將其指派給 URL 參數。 在上述範例中,URL 參數 action 會指派值 show 。 如果區段未以大括弧括住,該值就會被視為常值。

Defaults 屬性設定為 RouteValueDictionary 物件,其中包含 URL 中遺漏參數時所使用的值,或設定 URL 中未參數化的其他值。 將 Constraints 屬性設定為 RouteValueDictionary 物件,其中包含正則運算式或 IRouteConstraint 物件的值。 這些值可用來判斷參數值是否有效。

建構函式

Route(String, IRouteHandler)

使用指定的 URL 模式和處理常式類別,初始化 Route 類別的新執行個體。

Route(String, RouteValueDictionary, IRouteHandler)

使用指定的 URL 模式、預設參數值和處理常式類別,初始化 Route 類別的新執行個體。

Route(String, RouteValueDictionary, RouteValueDictionary, IRouteHandler)

使用指定的 URL 模式、預設參數值、條件約束和處理常式類別,初始化 Route 類別的新執行個體。

Route(String, RouteValueDictionary, RouteValueDictionary, RouteValueDictionary, IRouteHandler)

使用指定的 URL 模式、預設參數值、條件約束、自訂值和處理常式類別,初始化 Route 類別的新執行個體。

屬性

Constraints

取得或設定運算式的字典,這些運算式指定 URL 參數的有效值。

DataTokens

取得或設定自訂值,這些自訂值會傳遞給路由處理常式,但不會用來判斷路由是否符合 URL 模式。

Defaults

取得或設定 URL 未包含所有參數時所要使用的值。

RouteExistingFiles

取得或設定值,指出 ASP.NET 路由是否應該處理符合現有檔案的 URL。

(繼承來源 RouteBase)
RouteHandler

取得或設定處理路由要求的物件。

Url

取得或設定路由的 URL 模式。

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetRouteData(HttpContextBase)

傳回所要求路徑的相關資訊。

GetType()

取得目前執行個體的 Type

(繼承來源 Object)
GetVirtualPath(RequestContext, RouteValueDictionary)

傳回與路徑相關聯的 URL 相關資訊。

MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ProcessConstraint(HttpContextBase, Object, String, RouteValueDictionary, RouteDirection)

判斷參數值是否符合該參數的條件約束。

ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

適用於

另請參閱