我希望能够制作一个同时具有动作和ID的MVC路线。
实施例: 如果打电话
HTTP://www.something.com/F/GetMyData
然后调用GetMyData动作
如果致电
HTTP://www.something.com/F/dfeTD53F
并且没有找到此名称的操作,它假定“dfeTD53F”是ID控制器F应该使用该ID调用。
这可能吗?如何?
这只是糟糕的应用程序设计吗?
现在我在route.config中有了F下所有特定操作的路由,并且可能会在时间上变得非常混乱。
答案 0 :(得分:0)
为此,我的解决方案是创建一条“全部捕获”路由(作为最终条目),然后在控制器中手动处理它。
routes.MapRoute(
name: "CatchAll",
url: "{*url}",
defaults: new { controller = "CatchAll", action = "Index" }
);
它不是一个优雅的解决方案,但是很好。.MVC路由开始时并不优雅。