[英]asp.net Url Routing Issue
控制器中的索引函數采用三個參數,分別為“ a”,“ b”,“ c”。 目前,我能夠將值傳遞給url中的那些參數,例如action?a =“ 1”&'b'= 2&'c'= 3。
我想以action /“ value”或action / b =“ value”的形式將值發送到URL中的參數'b'。 我嘗試在Global.asax.cs中編輯路由,但出現錯誤“找不到路徑控制器或未實現iController”。 在這個問題上的任何幫助將不勝感激
您應該通過以下方式將其構建到global.asax中的路由表中:
RouteTable.Routes.Add(new Route
{
Url = "[controller]/[action]/[a]/[b]/[c]",
Defaults = new { controller = "myController", action = "myAction", a = "1", b = "2", c = "3" },
RouteHandler(typeof(MvcRouteHandler)
});
要進行分解,Url參數顯示了預期的Url的結構,defaults參數提供了其中任何可能為空的默認值。 請記住,這將始終期望路由myDomain.com/myController/myAction/1/2/3
或類似於myDomain.com/myController/myAction///
的結構。 如果需要這些值的不同子集,則需要相應地調整路線。 另外,您需要確保此路線在路線定義中相當早地出現。 這些路由由它找到的第一個匹配路由確定,因此,更復雜(更難到達)的路由應始終盡早,以允許默認路由捕獲任何未命中的路由。
參考: http : //weblogs.asp.net/scottgu/archive/2007/12/03/asp-net-mvc-framework-part-2-url-routing.aspx
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.