Umbraco 7 自定义控制器不工作

Umbraco 7 Custom Controllers not working

我有两个 Umbraco 站点,一个在 7.1.8 版上,另一个在 7.2.4 版上。 7.1.8 的站点有几个控制器,所有控制器都继承自 PluginController。除了从 PluginController 继承之外,没有对模型进行任何修改,即从 Umbraco.Web.Models.RenderModel 或视图中继承。它就像正常的 asp.net MVC 一样工作。控制器没有理由与 Umbraco 交谈。

然而,我的第二个网站似乎不想以同样的方式工作。坚持使用 Umbraco.Web.Models.RenderModel 等的错误消息

有什么方法可以让 Umbraco 像在第一个站点中一样让我的控制器保持独立?

只有两种方法可以得到运行时错误建议使用Umbraco.Web.Models.RenderModel

1) 通过将不继承 Umbraco.Web.Models.RenderModel 的自定义模型传递到继承自 Umbraco.Web.Mvc.UmbracoTemplatePage

的视图

2) 通过将不继承 Umbraco.Web.Models.RenderModel 的自定义模型传递到视图中,哪个布局期望模型的类型为 Umbraco.Web.Models.RenderModel

由于您的视图没有继承自 Umbraco.Web.Mvc.UmbracoTemplatePage,所以它必须是第二种情况,因此请检查您的布局。例如。在您的视图中明确设置 Layout = null 并查看错误是否消失。

请参阅返回带有自定义模型的视图部分here了解更多详细信息和可能的解决方法。

PS。请注意,可以通过位于 Views 文件夹中的 _ViewStart.cshtml 隐式设置布局。