Ton*_*ich 8 .net asp.net htmltextwriter
我有一个第三方工具,使用HtmlTextWriter的RenderBeginTag,RenderEndTag和AddAttribute方法通过代码创建img标记.我希望将生成的HTML转换为字符串.我尝试了这里提到的反射方法,但是我得到一个错误"无法将类型'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?
}
Run Code Online (Sandbox Code Playgroud)
Bri*_*ins 11
StringWriter w = new StringWriter();
HtmlTextWriter h = new HtmlTextWriter(w);
ctl.RenderControl(h);
return w.ToString();
Run Code Online (Sandbox Code Playgroud)
显然,你必须正确关闭连接.但这大致是这个; 我已经为单元测试做了这个,但我很抱歉,目前我没有确切的代码.
HTH.