我希望海基会的网址添加到我的应用程序,因此不是像链接:
/home/product/{reference}
(其中引用冲是识别产品参考)路由映象无视我的自定义路由
我可以有:
/p-big-silver-microwave/{reference}
(其中“大银微波”是产品名称)
,所以我说的路线图
routes.MapRoute("Product", "p-{any}/{reference}", new { controller = "Home", action = "Product", reference = UrlParameter.Optional });
但是!现在,如果产品标题(用于生成URL的SEF部分)的单词以'p'结尾,例如灯,则为其生成的URL将为: /p-lamp-shade/abc123
路由映射器同时看到第1个p-
和第2个p-
,并由于某种原因忽略了我指定的路由。
我认为在路线图中指定一个URL为p-{any}/{reference}
意味着如果URL 开始与p-它会匹配??
如何解决此问题的任何帮助将不胜感激!
UPDATE
我试图路由映射以不同的方式加入了约束和改变URL是这样的:
routes.MapRoute("Product", "{any}/{reference}", new { controller = "Home", action = "Product", reference = UrlParameter.Optional }, new { any = @"^p-" });
这种方法不工作都不过。