如果请求是Ajax请求,我想回复具有部分视图的Web请求。如果它不是Ajax请求,我想将部分包装在布局中并提供整页。
最好的方法是什么?
干杯,伊恩。
答案 0 :(得分:0)
这样的事情应该有效:
if(request.IsAjaxRequest()) {
return PartialView();
} else {
return View();
}
答案 1 :(得分:0)
您可以创建两个Controller方法副本,一个用于HTTP GET,另一个用于HTTP POST。如果您的所有AJAX都使用POST,那就处理它。
[HttpGet]
public ActionResult Index()
{
// Do something
return View();
}
[HttpPost]
public PartialViewResult Index()
{
// Do something
return PartialView();
}
或者,在MVC3 Futures Library中,您可以使用[AjaxOnly]
标记来达到类似效果。