我想要做的是我的应用程序的动态路由。
例如,在 Application_BeginRequest() 中,我想获取当前控制器并确定它是否存在。如果没有,我想添加一组覆盖默认路由的路由,以便我的 url 看起来像这样
mysite.com/term 来自数据库
但是,如果“来自数据库的术语”是一个有效的控制器,我希望它使用默认路由
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = "" } // Parameter defaults
);
我已经按照我想要的方式制定了路线。现在我只需要获取当前控制器并确定它是否存在。如果我不添加我的自定义路线,我会收到此错误:
IControllerFactory 'MySite.Web.UnityControllerFactory' 没有为名为 'term from database' 的控制器返回控制器。
有没有办法使用全局统一来确定控制器是否存在?
谢谢!