如何配置路由,以便它允许这样的语法:
/ControllerName/ActionName/0000-00000-0000-0000
最后一部分是Guid?
public ActionResult ActionName(Guid value){}
答案 0 :(得分:4)
这是自定义路线定义。最后一个参数是正则表达式形式的路径约束,需要value
匹配Guid格式。
routes.MapRoute(
"YourRouteName",
"{controller}/{action}/{value}",
new { controller = "ControllerName", action = "ActionName" },
new { value = @"^(\{{0,1}([0-9a-fA-F]){8}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){12}\}{0,1})$" }
);
答案 1 :(得分:0)
您需要添加一些新路由。你会想做这样的事情:
routes.MapRoute(
"MoveToTab",
"{controller}/{action}/{value}",
new { controller = "ControllerName", action = "ActionName",
value = System.Guid.Empty }
);
此处ControllerName
和ActionName
将是这些部分的默认值。