我正在使用HtmlTextWriter类创建ASP.NET服务器控件。我的理解是,它是一个很好的类,用于确保我的输出HTML是有效的。我以为它也会很好地格式化东西,但它做了一堆奇怪的事情,使输出难以阅读。
是否有一些设置或东西,我可以玩,让这个看起来像有人花了时间,以适当的格式,或者它只是一个缺点,使用这个类?以下是我所谈论的丑陋格式的一些示例:
- 自关闭标签的使用不一致。有些标签我得到了,有些我没有。
- 标签之间的随机换行符。
- 在适当的地方缺少新行。
- 不匹配的缩进。
这就是我想要重现的
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="MySWF" width="100" height="100" codebase="https://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab">
<param name="movie" value="/MySWF.swf"></param>
<param name="quality" value="high" />
<param name="allowScriptAccess" value="sameDomain" />
<embed align="middle" pluginspage="https://www.adobe.com/go/getflashplayer" width="100" quality="high" height="100" loop="false" name="MySWF" type="application/x-shockwave-flash" play="true" allowscriptaccess="sameDomain" src="/MySWF.swf" />
</object>
……这就是我得到的:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="MySWF" width="100" height="100" codebase="https://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab">
<param name="movie" value="/MySWF.swf">
</param><param name="quality" value="high">
</param><param name="allowScriptAccess" value="sameDomain">
</param><embed align="middle" pluginspage="https://www.adobe.com/go/getflashplayer" width="100" quality="high" height="100" loop="false" name="MySWF" type="application/x-shockwave-flash" play="true" allowscriptaccess="sameDomain" src="/MySWF.swf" />
</object>
1条答案
按热度按时间gstyhher1#
AFAIK,没有任何设置的实际格式.如果你想自己格式化它,这可能是最好的解决方案。你,这会产生一些开销,所以如果值得的话。以下是一些DIY格式化的开源示例
http://snipplr.com/view/28048/net-html-formatter/
http://weblogs.asp.net/scottcate/archive/2007/01/10/my-c-code-formatting.aspx