2011-01-06 69 views
6

有沒有方法可以確定對控制器操作的調用是否來自使用Html.RenderAction函數的視圖。確定呼叫是否來自視圖

這與Request.IsAjaxRequest類似。如果調用來自視圖,我想只渲染一個局部視圖,而不是使用母版頁的全視圖。

BTW渲染部分是不是一個可行的解決方案作爲動作獲取附加數據

回答

9

使用ControllerContext.IsChildAction已給定的效果。這樣一來,我可以利用這個問題,孩子的動作和一個Ajax請求(針對非JavaScript的用戶後備)

 if (Request.IsAjaxRequest() || ControllerContext.IsChildAction) 
      return PartialView("ViewName", results); 
+0

感謝提供相同的HTML,並回答它是有用的,我需要在一個視圖來檢查這個,所以我使用了ViewContext.IsChildAction – 2013-10-02 16:03:45