有什么方法可以让我知道从哪个主视图调用局部视图?
我从两个主视图调用了一个部分视图,其中包含不同的数据。
MainIndex1.cshtml
@Html.Partial("~/Views/Shared/_partialView.cshtml", Model)
MainIdex2.cshtml
@Html.Partial("~/Views/Shared/_partialView.cshtml", Model)
所以,在_partialView
我怎么知道从哪个主视图调用它?
答案 0 :(得分:1)
如果您想查看哪个控制器和操作正在参与调用此部分视图。因此,如果您想在此子操作中获取父上下文,则可以执行以下操作:
public ActionResult Menu()
{
var rd = ControllerContext.ParentActionViewContext.RouteData;
var currentAction = rd.GetRequiredString("action");
var currentController = rd.GetRequiredString("controller");
...
return View();
}
或者您也可以使用此代码查找当前请求的控制器和操作名称。
Controller: @ViewContext.Controller.ValueProvider.GetValue("controller").RawValue
<br />
View: @ViewContext.Controller.ValueProvider.GetValue("action").RawValue
在stackoverflow上引用以下线程..
希望这会对你有所帮助。 感谢