目录
问题场景
在内容视图中使用Html.RenderAction展现分部视图时,在分部视图的Controllers方法中使用RedirectToAction方法进行重定向;部分代码如下:
分部视图部分代码
<div class="subMenu">
@{
Html.RenderAction("Left", "Common", new { MenuId =Model[0].PartID });
}
</div>
Left视图部分代码
public ActionResult Left(int? partId)
{
return RedirectToAction("Index", "Home");
}
解决方法
将“Left”分部视图中的“return RedirectToAction(“Index”, “Home”);”重定向方法修改为视图展示即可解决此问题,如:
public ActionResult Left(int? partId)
{
return View("_Left");
}
问题所在
在分部视图中(也就是所谓的子操作)中如果做了重定向,这个时候展示的有可能就不是一个分部视图,这样会导致整个机制混乱,而且页面的显示也是混乱的,这个问题仔细想下还是很好理解的。
以上为个人的理解,如有兴趣请留言细谈