.net – 将HtmlTextWriter的内容转换为字符串

前端之家收集整理的这篇文章主要介绍了.net – 将HtmlTextWriter的内容转换为字符串前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个第三方工具,通过代码使用 HtmlTextWriter的RenderBeginTag,RenderEndTag&创建一个img标签. AddAttribute方法.我希望将生成的HTML转换为字符串.
我尝试了 here提到的反射方法但是我得到一个错误“无法将’System.Web.HttpWriter’类型的对象强制转换为’System.IO.StringWriter’. HtmlTextWriter的InnerWriter类型是HttpWriter类型.

关于如何将输出html复制到字符串中的任何想法?

增加:来自第三方控件的代码

protected override void Render( HtmlTextWriter output )
  {
  .....
  output.AddAttribute( HtmlTextWriterAttribute.Src,src );
  output.RenderBeginTag( HtmlTextWriterTag.Img );
  output.RenderEndTag();
                <-- What is the HTML now? Maybe look in OnPreRenderComplete event?

  }

解决方法

StringWriter w = new StringWriter();
HtmlTextWriter h = new HtmlTextWriter(w);

ctl.RenderControl(h);

return w.ToString();

显然,你必须正确关闭连接.但这大致是这个;我已经为单元测试做了这个,但我很抱歉,目前我没有确切的代码.

HTH.

猜你在找的asp.Net相关文章