簡體   English   中英

在ASP .NET C#中路由多個頁面

[英]Routing multiple pages in ASP .net c#

我正在嘗試路由2個頁面,但它僅路由第一個注冊的頁面。 這是代碼:

 static void RegisterRoutes(RouteCollection routes)
{
    routes.MapPageRoute("DynamicCity", "{dCity}.aspx", "~/DynamicCity.aspx");
    routes.MapPageRoute("DynamicPage", "{Description}.aspx", "~/DynamicPage.aspx");
}

為什么只路由DynamicCity

我不確定這是否對您有幫助,因為您沒有指定URL方案是什么。 但是,如果您只想將/DynamicCity.aspx發送到~/DynamicCity.aspx頁面,並將所有其他頁面路由到各自的名稱,則可以執行以下操作:

static void RegisterRoutes(RouteCollection routes)
{
    routes.MapPageRoute("Page", "{pageName}.aspx", "~/{pageName}.aspx");
}

但是,由於ASP.NET仍會執行此操作,因此我不確定您對.NET路由的期望。

通常,人們使用MapPageRoute從URL中刪除.aspx擴展名(如圖所示)或完全更改URL。

static void RegisterRoutes(RouteCollection routes)
{
    routes.MapPageRoute("Page", "{pageName}", "~/{pageName}.aspx");
}

看看這個答案還有其他想法。

當路由系統都具有相同形式的{parameter}.aspx時,路由系統應該如何知道兩條路由之間的區別? 不可以 由於路由是按順序評估的,因此第一個優先級高。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM