如何确定当前操作是ChildAction还是路由主操作?我应该检查URL并与操作名称进行比较吗?那不太好,因为它依赖于路由模式...... 或者我应该进行两个相同名称的操作,将ChildActionOnly放在其中一个上并具有单独的逻辑(主要返回View()或PartialView())?如何区分过载?
好的,从另一个角度来看:如何制作它,如果它是一个ChildAction然后返回一个PartialView,否则一个完整的View?
答案 0 :(得分:45)
您可以使用IsChildAction
属性:
public ActionResult Index()
{
if (ControllerContext.IsChildAction)
{
// The Index action was invoked as child action using
// @Html.Action("index")
}
...
}