导入控制器和视图到Web项目

时间:2017-10-16 11:48:03

标签: c# asp.net-mvc nuget-package

我想创建一个具有控制器(FooController)和附带视图(Foo.cshtml)的代码库,并将其导入Web项目。我们的想法是从这个项目中创建一个nuget包,以便将其导入到其他Web项目中。但是,当我测试在另一个Web项目中导入此项目并导航到控制器时,控制器命中,但是当它尝试加载视图时我得到一个视图引擎异常。关于这是否可能以及如何做的任何想法?

1 个答案:

答案 0 :(得分:0)

因为默认情况下它只从主dll /项目中加载控制器。

您可以扩展/覆盖发现控制器的这部分代码(来自.Net MVC):ControllerFactory

路由器匹配路由的url并告诉ControllerFactory它想要的控制器的名称。

默认情况下,此controllerFactory仅反映您的启动DLL(代码项目),而不反映外部nuget包。