【问题标题】:Html.Partial or Html.RenderPartial with MVC3?Html.Partial 或 Html.RenderPartial 与 MVC3?
【发布时间】:2011-09-10 11:18:58
【问题描述】:

即使看到下面的解释,我也完全糊涂了。

<div>
  @Html.Partial("_FeaturedProduct")
</div>

部分视图可以在布局页面(或者如果使用带有 ASPX 的 MVC 2/3,母版页)以及常规视图中呈现。

在某些情况下,您可能希望暂时搁置并直接写入 HTTP 响应流,而不是让部分视图呈现结果(部分/视图使用 MvcHtmlString/StringWriter)。为此,请使用 Html.RenderPartial 帮助器。

<div>
  @Html.RenderPartial("_FeaturedProduct")
</div>

谁能告诉我这是什么意思?在什么情况下我可能想直接写入 HTTP 响应等。如果我的部分视图只包含这样的一行:

<h1>Hello</h1>

我应该使用哪个,为什么?如果我使用另一个会发生什么?

以下内容让我更加困惑:“将 Html.RenderPartial 用于流式传输图像或其他以媒体为中心的元素或更快的下载时间非常重要的元素。”

【问题讨论】:

标签: asp.net-mvc asp.net-mvc-3


【解决方案1】:

请参阅下面的回复。

唯一的区别是 Partial 返回一个 MvcHtmlString,并且必须 在 内调用,而 RenderPartial 返回 void 并渲染 直接到视图。

如果您查看源代码,您会发现它们都调用了 相同的内部方法,传递一个 StringWriter 来渲染。

如果您想查看、保存或操作 生成 HTML 而不是将其写入页面。

What is the difference (if any) between Html.Partial(view, model) and Html.RenderPartial(view,model) in MVC2?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-30
    • 2011-05-28
    • 2011-02-13
    相关资源
    最近更新 更多