【发布时间】:2011-10-26 12:40:41
【问题描述】:
我有一个需要返回 HtmlString 的扩展方法。该方法有一个将构建 HtmlString 的循环,但是 HtmlString 对象没有 Append 方法并且不允许使用 + 运算符进行连接,所以我不确定如何构建 HtmlString。
我想使用 StringBuilder 但它没有 ToHtmlString 方法...
对此有任何解决方案或模式吗?
【问题讨论】:
-
我认为您应该能够使用 HTML 内容构建一个普通的字符串生成器,然后将其输出到 @Html.Raw() 调用中,这样可以解决问题吗?
-
谢谢 - 效果很好。将为该解决方案起草一个包含代码的答案。
-
没问题,很高兴它有帮助,如果有帮手,就没有必要重新发明轮子! :)
-
我更喜欢@swapneel 的答案,因为它为将 RouteValueDictionary 参数添加到您的扩展方法并以 MVC'y 方式呈现相关标记敞开大门。无论您是渲染单个标签还是整个 HTML 块,这都适用。
-
我不确定我是否正确,所以我不会将其作为答案发布,但是使用您的 StringBuilder 但将扩展方法添加到 StringBuilder ToHtmlString 怎么样?