以前在Stack Overflow和其他地方以类似但不相同的方式提出了这个问题(并且没有让我满意)。
来自 linux 世界,我想使用 ASP.NET MVC,但要避免相同但大小写不同的路由解析到同一页面。我不想强制所有路线都是 100% 小写。
例如,我想/Home/Something
成为一条有效路线,/Home/somethingElse
也想成为一条有效路线,但不是/Home/something
or /home/somethingelse
,给定两个名为Something
andsomethingElse
的函数HomeController
。
我在函数中找不到任何方法RegisterRoutes
,但也许我遗漏了一些明显的东西?我可以通过向每个 Controller 函数添加代码来轻松回答这个问题,但我显然试图避免这样做。
理想情况下,该解决方案将涉及捕获特定路由的所有排列,然后 301 重定向任何与控制器功能的情况不完全匹配的排列。