我有一个可能通过一个常规链接调用的动作,在这种情况下我会返回一个View(),或者也可以通过
AJAX或RenderAction(即作为一个Child Action)来调用,在这种情况下我会返回一个PartialView().
排序AJAX部分很容易 – 但是如何测试我的操作是否作为“儿童动作”呈现?
理想情况下,我想编写如下代码:
if (Request.IsAjaxRequest() || Request.IsChildAction()) return PartialView(); return View();
显然,Request.IsChildAction()不存在 – 有没有类似的东西,或者我只需要创建一个总是返回PartialView的特殊ChildAction?
解决方法
你几乎在那里:
public ActionResult Foo() { if (Request.IsAjaxRequest() || ControllerContext.IsChildAction) { return PartialView(); } return View(); }