首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何生成Html

如何生成Html
EN

Stack Overflow用户
提问于 2013-05-08 13:50:46
回答 2查看 14K关注 0票数 8

我有一个Html页面的模板,我需要在ASP.NET中动态地添加它的内容,我还需要根据数据建立许多模板页面的实例。

显然,使用字符串创建大型Html是非常肮脏的方式。所以我选择使用HtmlGenericControl生成我的Html。我做到了。但是我不能从它获得生成的字符串。

在ASP.NET页面中添加这些控件并进行呈现很简单,但我需要它们的Html。

如果不可能,是否还有其他结构化的方法来生成Html.?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-09 04:41:26

巴特杜德说的特里克就像个魅力..。

对其他人来说,解决办法就是这样.

代码语言:javascript
复制
// create you generic controls
HtmlGenericControl mainDiv = new HtmlGenericControl("div");
// setting required attributes and properties
// adding more generic controls to it
// finally, get the html when its ready
StringBuilder generatedHtml = new StringBuilder();
using (var htmlStringWriter = new StringWriter(generatedHtml))
{
    using(var htmlTextWriter = new HtmlTextWriter(htmlStringWriter))
    {
        mainDiv.RenderControl(htmlTextWriter);
        output = generatedHtml.ToString();       
    }
}

希望这有助于即将到来的读者.:)

票数 22
EN

Stack Overflow用户

发布于 2014-09-11 21:26:38

下面是VB中的相同代码:

代码语言:javascript
复制
    Dim generatedHtml As New StringBuilder()
    Dim htw As New HtmlTextWriter(New IO.StringWriter(generatedHtml))
    mainDiv.RenderControl(htw)
    Dim output As String = generatedHtml.ToString()
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16442497

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档