ASP.NET MVC4中的PartialViews

Bil*_*ill 3 asp.net asp.net-mvc

我注意到有几种方法可以使用Views和PartialViews:

RenderAction,RenderPartial和"返回PartialView"

放置在HTML中的RenderAction只会调用一个Action并渲染返回的View(返回的View可以是局部视图还是视图?)

RenderPartial将简单地检索View的内容而不执行任何Controller操作

最后,"返回视图"和"返回部分视图"之间有什么区别?

谢谢

Dar*_*rov 12

return View()返回启用了布局的视图,以便获得包含<html><body>标记的完整HTML页面.return PartialView()另一方面,禁用布局,您只获得此视图中包含的HTML片段.实际上,在使用Razor视图引擎时,我更喜欢谈论模板而不是视图和部分视图.这是因为视图是模板而部分视图是没有布局的模板.但在这两种情况下,它都是Razor模板.

  • @bhaidar,当有一个AJAX请求时,它将取决于你打算对结果做什么.如果您打算用控制器操作返回的HTML片段替换DOM的某些部分,那么,是的,您应该返回PartialView以确保不包含任何布局,否则您将得到无效的HTML. (2认同)