asp.net mvc 5中具有不同控制器的唯一子段路由

问题描述

我有一个用例,其中我想对不同的控制器路由使用类似的子弹URL 喜欢

[Route("~/{prodSlug:prod}")]
ControllerAction1

[Route("~/{CatSlug:cat}")]
ControllerAction2

[Route("~/{users:user}")]
ControllerAction3

等...

现在我已经定义了不同的自定义约束,并且它们根据数据库字典匹配true或false 但请求完成后,我仍然收到错误消息。

Multiple controller types were found that match the URL. This can happen if attribute routes on multiple controllers match the requested URL.

The request has found the following matching controller types:
MrnMrsPetFoodFront.Controllers.CategoryController
MrnMrsPetFoodFront.Controllers.ProductController

我看到的原因是,一旦在categoryconstraint中找到一条路由并继续使用产品和其他方法,则mvc不会停止 一旦找到匹配项,或者在mvc 5中无法匹配,他们是否会停止此操作? 我知道我可以在 RouteConfig 上提供路由约束并建立基于正则表达式的匹配项,但这仅适用于应用程序启动,并且当链接数量可以达到时,这不是可行的解决方案随时间推移达到10k或50k或更多。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...