0

我有一个共享_Layout.cshtml文件,供不同区域中的视图使用。

_Layout.cshtml调用@Html.Action了“根”区域(不确定如何引用非区域区域)中控制器上的操作,该操作返回一个PartialViewResult.

我的问题是我可以访问部分操作正在访问的区域的名称吗?

因此,如果用户访问/Users/User/Create,用户区中的 Create 视图使用_Layout.cshtml调用 common Controller Action 的 common。我需要能够以该方法访问“用户”。

到目前为止,我已经查看了ParentActionViewContext.RouteData但只有控制器和动作名称出现在那里(正如我所期望的那样)。

4

1 回答 1

0

根据我们简短的 Twitter 对话,您说您这样做是为了在菜单/导航栏中突出显示当前区域。

我过去做过类似的事情,我将菜单视为具有自己的控制器和操作的局部视图。采用这种方法将允许您在(视图)模型上公开MenuItem“选定”​​或“活动”的布尔值,然后使用自定义 HTML 助手为活动/非活动菜单项写出适当的 HTML。

题外话,我知道,但你可能把你的领域做得太细了。例如,除了UserController“用户”区域还包含哪些其他控制器?您是否可以在默认区域中使用单独的控制器来实现相同的功能分离?

于 2013-08-07T19:33:27.103 回答