我正在寫一個httpModule來攔截即將到ASP.NET MVC應用程序的請求。是否有一種簡單的方法可以確定URL的哪些部分構成區域,控制器,操作和實際價值。ASP.NET MVC提取控制器,來自URL的動作和值
例如 www.mysite.com/category/products/GetDetails/101
類別:區域 產品:控制器 GetDetails:動作 101列:ProductId
有一種簡單的方式來獲得RouteEngine或東西回來。 ..
我正在寫一個httpModule來攔截即將到ASP.NET MVC應用程序的請求。是否有一種簡單的方法可以確定URL的哪些部分構成區域,控制器,操作和實際價值。ASP.NET MVC提取控制器,來自URL的動作和值
例如 www.mysite.com/category/products/GetDetails/101
類別:區域 產品:控制器 GetDetails:動作 101列:ProductId
有一種簡單的方式來獲得RouteEngine或東西回來。 ..
應該幫助你出去,answer here了。
像這樣的路線可能的工作:
routes.MapRoute(
"category", // Route name
"~/category/products/getdetails/{ProductId}", // URL with parameters
new { controller = "products", action = "getdetails" },
new { ProductId = "\\w+" });
這將映射產品編號爲變量,以你的產品控制器的getdetails作用。
真棒丹尼爾感謝您的方向。 因此,數據在HttpContext.Current.Request.RequestContext.RouteData中可用 – user982863