1

我正在编写一个 httpModule 来拦截到达 ASP.NET MVC 应用程序的请求。有没有一种简单的方法来确定 URL 的哪一部分构成区域、控制器、操作和实际值。

例如 www.mysite.com/category/products/GetDetails/101

类别:区域产品:控制器GetDetails:动作101:productId

有没有一种简单的方法可以从 RouteEngine 或其他东西中返回...

4

2 回答 2

0

ControllerContext.RouteData

应该能帮到你,答案也在这里

于 2011-10-06T19:26:55.447 回答
0

像这样的路线可能会起作用:

routes.MapRoute(
            "category", // Route name
            "~/category/products/getdetails/{ProductId}", // URL with parameters
            new { controller = "products", action = "getdetails" },
            new { ProductId = "\\w+" });

这会将 ProductId 作为变量映射到产品控制器的 getdetails 操作。

于 2011-10-06T19:29:38.713 回答