我正在为 MVC5 编写一个 html 帮助程序扩展。我需要访问视图上下文的流来编辑它。(如文本阅读器(
htmlHelper.ViewContext.Writer.Write("<div>");
有没有办法访问流;这样我就可以在示例中最后一个"div"标签上方操作或添加一些 html 代码?
我找不到任何线索,在哪里可以找到教科书写的流?
这取决于您使用的视图引擎,但如果您编写 html 帮助程序,它会容易得多。 请参阅创建自定义 HTML 帮助程序
简单的 html 帮助程序可以这样编写:
@helper CustomDiv(var param1, var param2){
Write("something to html encode & stuff");
WriteLiteral("<div>something that is html</div>");
}
在 Razor 中,您也可以只调用 @Write()
,它会将字符串编码为 HTML。 如果您需要 TextWriter,请参考Context.Response.Output
但这不允许你像 HtmlHelper 那样内联操作 HTML - 它更多地用于覆盖普通处理程序。
或者只是WebPageBase
的Output
属性,它也是一个文本编写器