我會盡力解釋這一點,我可以。ASP.NET 4.0 URL路由 - 類似MapPageRoutes
我創建了一個CMS,允許您創建類別和內容部分。兩者都有完全不同的模板,但我希望在路由時使用相同的URL路由mapPageRoute參數。基本上,我需要它來檢查別名是否是一個類別,如果沒有命中內容部分路由器。
這裏是我的Global.asax註冊途徑:
void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute(
"Home",
string.Empty,
"~/Default.aspx"
);
routes.MapPageRoute(
"Category",
"{*CategoryAlias}",
"~/templates/Category.aspx"
);
routes.MapPageRoute(
"Content",
"{*ContentAlias}",
"~/templates/Content.aspx"
);
}
目前,分類做工精細,但是當我把內容片斷別名它擊中的類別,不跳到下一個路由URL嘗試。 Category.aspx和Content.aspx Web表單具有完全不同的視圖。後面的代碼很相似,但可以訪問類別表/過程和其他內容。
如果有人需要更多信息,只需詢問。
是的,這是事情,我不希望有一個額外的參數在URL中。我希望它是www.website.com/category或www.webiste.com/content – balexander 2011-12-29 05:51:31
* queryvalues是一個捕獲所有。這些路線圖捕獲www.website.com/Category或www.webiste.com/Content以及www.website.com/Category/foo或www.webiste.com/Content/foo/bar?m=rand – 2011-12-29 15:32:12
說我有一個名爲「新聞」的內容部分和一個名爲「新聞」的類別如果URL是www.website.com/Press或www.website.com/News是否知道如果第一個模板是錯誤的,則切換到後者模板? – balexander 2011-12-29 16:56:08