我需要使用这样的网址:
http://mydomain.com/Box/Categ1/Categ2/Categ3/.../CategN/id1,id2,id3,...,idN
然后我尝试用这种方式创建一条新路线......
routes.MapRoute(
"Box",
"Box/{data}",
new { controller = "Box", action = "Index"},
new { data = @"([a-zA-Z0-9-,]+/?)+" }
);
但它不起作用。如果我使用任何字符而不是“/”(斜杠),它工作正常。是否可以使用斜杠?我真的希望看到这样的网址。
答案 0 :(得分:11)
如果要将数据变量设置为Box之后的所有内容,只需使用catch-all参数。
routes.MapRoute(
"Box",
"Box/{*data}",
new { controller = "Box", action = "Index"}
);