我很好奇为什么它完全是like that?
如果我通过AJAX调用它:
public ActionResult Foo(){
return RedirectToAction("SomethingThatReturnsPartialView","Bar");
}
它不会在AJAX回调中返回部分视图,但会重定向到代表操作的url。
那么 - 为什么会这样?有哪些可行的解决方法?
答案 0 :(得分:2)
因为当浏览器收到来自服务器的HTTP 30x重定向的回复时,无论请求是如何同步或异步启动的,它都会这样做。
可能的解决方法可能就像RenderViewToString,但正如我们所知,MVC还没有这个功能。这是每个人都想知道的缺失功能。
请参阅此讨论:Render a view as a string
另请看这里,可能有一个选项阻止浏览器使用JavaScript重定向:Catching 302 FOUND in JavaScript