2

我正在开发一个大型 Sitecore 6.6 MVC 站点。老实说,我很难在 Google 上找到任何好的信息。

我的问题是。我在 Sitecore 内容编辑器中进行控制器渲染。我希望这个控制器渲染指向我的 MVC 项目中的 MVC 区域。

在 Sitecore 中我的控制器渲染的数据部分中,我有 2 个文本框: 控制器控制器操作

我在控制器文本框中键入什么以指向我的区域。

我的区域是这样的:<site root>/Areas/UserManagement/ProfileController.cs

我已经尝试了一切。我希望有人能帮帮忙。

4

1 回答 1

3

在 Controller 字段中,您将Profile指定您的ProfileController,在 Controller Action 字段中,您将输入您希望调用的 ProfileController 的 Action 的名称。

您的 UserManagement 区域可能会有一个UserManagementAreaRegistration类,其中定义了区域特定的路由,并且将从 ApplicationStart 事件处理程序中调用它。

这就是连接控制器渲染的方法。当看到这个时,有一些绊脚石:

  1. 动作名称唯一性。我没有设法获得 MapRoute 的命名空间重载以允许在解决方案中的其他地方出现的操作名称。

    public System.Web.Routing.Route MapRoute(string name, string url, object defaults, string[] namespaces)

  2. 然而,为了能够让视图解析过程尊重区域路径,它似乎搜索由控制器名称确定的标准视图文件夹。从您的示例中,我必须将剃刀视图的副本放入~/Views/UserManagement/其中才能渲染。

于 2012-11-15T07:44:33.973 回答