HtmlTextWriter& MVC 3剃刀输出

时间:2012-04-23 17:26:45

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

这可能是一个快速解决方法,但我正在写HtmlTextWriter中的HtmlHelper,无论我尝试什么,它都会对HTML进行编码,因此输出会显示标记。

助手:

protected override void WriteHtml(System.Web.UI.HtmlTextWriter writer)
        {
            writer.WriteFullBeginTag("div");
            writer.WriteEndTag("div");

            base.WriteHtml(writer);
        }

它将把它放到页面上:<div></div>

修改

我在这样的视图中调用它:

@Html.SAIF().Toolbar().Items(items => {
    items.Add().Action("Action");
    ... ...
})

编辑#2

好的,让我们看看我能否解释一下这个问题。

如果我使用ViewContext.Writer将我的帮助器编写到流中,那么在使用如下语法时:

@Html.MyHelper

它输出编码的HTML(例如)<div>Test Div</div> =不正确

如果我使用这样的语法:

@{Html.MyHelper.Render();}

它呈现正确,这意味着它实际上将div插入DOM而不是将其显示为字符串。

有意义吗?

0 个答案:

没有答案