我有一个部分视图作为 _Layout.cshtml 的一部分,因此它可以在多个页面上呈现。将局部视图视为显示在网站每个页面上的菜单。
当单击局部视图菜单中的这些链接之一时,我只能在被称为局部视图的操作方法中访问/查看,例如它的名称等。
但我真正需要的是单击项目时部分视图所在的视图。
我怎样才能得到这个?
我有一个部分视图作为 _Layout.cshtml 的一部分,因此它可以在多个页面上呈现。将局部视图视为显示在网站每个页面上的菜单。
当单击局部视图菜单中的这些链接之一时,我只能在被称为局部视图的操作方法中访问/查看,例如它的名称等。
但我真正需要的是单击项目时部分视图所在的视图。
我怎样才能得到这个?
您可以使用ParentActionContext
例如
var controller = ControllerContext.ParentActionViewContext.RouteData.Values["Controller"] as string;
var action = ControllerContext.ParentActionViewContext.RouteData.Values["Action"] as string;
更新
从这个角度来看,这个电话应该做你需要的
@HttpContext.Current.Request.RequestContext.RouteData.Values["controller"].ToString()
@HttpContext.Current.Request.RequestContext.RouteData.Values["action"].ToString()