【发布时间】:2014-11-15 20:54:03
【问题描述】:
简短的问题:
有没有办法在一个路由中配置多个默认控制器??
详细解释:
我正在创建类似于 MVC 5 中的 portable area 的东西。 具体来说,我想创建一种默认控制器,如果用户没有在他的应用程序中创建它,它将从我的可移植组件中触发。更准确地说:
- 假设我有一个 MVC 应用程序,它通过 NuGet 安装我的框架。
- 该组件在
_framework文件夹中安装了一堆视图,并引用了一个DLL,并且MVC 应用程序开始从我的FrameworkHTTPApplication继承。 - 该基类默认配置一些东西,例如框架的视图引擎,它在
_framework文件夹中搜索视图,以及默认路由。 - 现在我希望应用程序能够创建或不创建他们的
HomeController:如果他们不创建它,框架将调用FrameworkHomeController(在框架 DLL 内),但如果他们创建了一个,它击中 ~/ 时送达。
我能够在框架中创建默认控制器,并正确连接它,但它不会后退。这就是 routeDebugger 向我展示的内容:
如您所见,我配置了两条路由(相同的 URL,不同的默认值)。我期待的是:如果控制器Home 不存在,那么应该调用FrameworkHome。
我玩过命名空间,但结果是一样的。
关于如何做到这一点的任何线索?
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-5 asp.net-mvc-routing