MVC - 从代码输出HTML,最好使用Response.OutputStream或StringBuilder

时间:2008-12-12 19:04:53

标签: asp.net-mvc

我正在编写一个asp.net MVC网站,我已经为Html类编写了一些扩展,为我生成了一些html。

在扩展方法中,最好直接写入Response.Output流还是让扩展方法返回一个字符串?

直接从View中使用Reponse.Output流有什么优点/缺点。

用法示例:

<%= Html.GenerateHtml() %>

VS

<% Html.GenerateFoo() %>

在GenerateFoo()方法中,我可以使用以下内容直接写入输出streem

... 
helper.ViewContext.HttpContext.Response.OutputStream.Write()
...

2 个答案:

答案 0 :(得分:3)

返回一个字符串使您可以选择在将结果转储到Response.Write()之前修改/检查/捕获结果。

答案 1 :(得分:0)

首先,我不会使用OutputStream进行文本输出,我会使用Response.Write()。

其次,将字符串返回到&lt;%=无论如何调用Response.Write()(有时候查看Temp ASP.NET文件文件夹中ASPX的编译输出)。