【问题标题】:What is difference between partial and render partial view ?部分视图和渲染部分视图有什么区别?
【发布时间】:2016-11-01 05:09:52
【问题描述】:

我是 asp.net MVC 的新手,请告诉我应该在哪里使用局部视图以及应该在哪里渲染局部视图。在此先感谢

【问题讨论】:

标签: asp.net-mvc


【解决方案1】:

This link might help.

Html.RenderPartial

  1. 此方法结果将直接写入 HTTP 响应流,意味着它使用与当前网页/模板中使用的相同 TextWriter 对象。
  2. 此方法返回 void。
  3. 使用简单,无需创建任何操作。
  4. 当局部视图中显示的数据已经在相应的视图模型中时,RenderPartial 方法很有用。
  5. 例如:在博客中显示文章的 cmets,我们希望使用 RenderPartial 方法,因为带有 cmets 的文章信息已经填充到视图模型中。 @{Html.RenderPartial("_Comments");}
  6. 此方法比 Partial 方法更快,因为它的结果直接写入响应流,因此速度更快。

Html.Partial

  1. 将部分视图呈现为 HTML 编码的字符串。
  2. 此方法结果可以存储在变量中,因为它返回字符串类型值。
  3. 使用简单,无需创建任何操作。
  4. 与 RenderPartial 方法一样,当局部视图中显示的数据已经在相应的视图模型中时,Partial 方法也很有用。
  5. 例如:在博客中显示文章的 cmets,您可以使用 Partial 方法,因为带有 cmets 的文章信息已经填充到视图模型中。 @Html.Partial("_Comments")

【讨论】:

    【解决方案2】:

    这两个辅助方法都用于渲染局部视图

    在 razor view @Html.Partial("_student", items){Html.RenderPartial("_student", items);} 中都有不同的语法,因为渲染部分返回 void 并且输出直接写入输出流,所以它的语法与 Partial 不同。

    视图中的网络语法 <%:Html.Partial("_student") %><% Html.RenderPartial("_student"); %>

    部分返回MVCHtmlString,可以赋值给变量。

    性能方面的渲染部分更好,因为它直接写入输出流。

    当然你可以在网上找到很多参考资料,并在堆栈溢出内阅读

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多