【问题标题】:ASP.NET MVC - Why don't HtmlHelpers render directly to the stream?ASP.NET MVC - 为什么 HtmlHelpers 不直接渲染到流?
【发布时间】:2012-03-30 20:26:29
【问题描述】:

为什么 ASP.NET MVC HTML Helpers 返回 MvcHtmlString 实例?为页面中每个呈现的帮助程序分配一个字符串似乎相当低效。为什么 Helpers 的工作方式与 WebForms 控件不同,直接呈现到 HtmlTextWriter?

【问题讨论】:

  • 请注意,即使您只是将字符串输出到流中,您通常也会分配字符串。

标签: asp.net-mvc


【解决方案1】:

MVC 视图不仅可用于生成 HTML,还可用作模板系统,例如用于生成电子邮件。您可以在 StackOverflow 上轻松找到将视图直接呈现为字符串的方法。这也使您可以更轻松地测试您的视图。

【讨论】:

    【解决方案2】:

    返回一个字符串可以让你用它做更多的事情,或者在其他地方调用它们(比如帮助类)。

    如果你想要性能,个版本直接写,比如RenderPartial()。看到这个堆栈溢出问题:Html.Partial vs Html.RenderPartial & Html.Action vs Html.RenderAction

    编辑:还有这个:What is the difference (if any) between Html.Partial(view, model) and Html.RenderPartial(view,model) in MVC2?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-22
      • 1970-01-01
      • 2013-02-01
      • 2012-07-09
      相关资源
      最近更新 更多