我正在尝试在Umbraco 7中创建我的代码包。当我将包导入新的Umbraco项目时,一切正常,除了新项目在routes表中找不到SurfaceController,除非我专门导入文件进入Visual Studio项目(我的最终客户端不会有)。
我已按照此处的说明操作:https://our.umbraco.org/documentation/reference/routing/surface-controllers
但得到相同的“找不到路线”错误。
我在我的项目中创建了一个名为“Controls”的区域,并在那里添加了控制器。然后我用[PluginController("Controls")]
装饰了控制器。
所以我有这个结构:
--Root VS Project
--Area
--Controls
--Controllers
--MyController
我从我的代码中这样称呼它:
@Html.Action("Index", "MyController", new { area = "Controls" }
当在VS中运行并且这些文件作为项目的一部分包含在运行时再次正常工作,但是当我导出它并将包(包含所有其他相关文件)导入到新的Umbraco项目时中断了,说它无法找到路线。我的假设是添加[PluginController(“Controls”)]属性意味着在启动时Umbraco项目会找到控制器并将其添加到路由中。情况不是这样吗?
答案 0 :(得分:0)
问题是我没有将我导出的项目的DLL包含到我导入的项目的bin文件夹中。