【发布时间】:2017-09-20 11:49:26
【问题描述】:
我正在尝试在路由中添加 number/int 作为约束。
来源: https://msdn.microsoft.com/en-us/library/cc668201.aspx#adding_constraints_to_routes
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute("Product",
"{ProductName}/{ProductId}",
"~/Product.aspx",
false,
new RouteValueDictionary
{{"ProductName", "[a-z]"},{"ProductId", @"^\d+$"}}
);
}
没关系:example.com/productX/1234
但即使 {ProductId} 不是 number/int,它也会打开 Product.aspx。
所以我不想 example.com/productY/xyz 路由到 Product.aspx。那条路线有什么问题?
第二个问题,{ProductName}中可以有字母、数字和破折号(-),如何将{ProductName}正则表达式改为所有字母、数字和破折号(-)?
【问题讨论】: