我有一个类似的问题,例如XML indenting when injecting an XML string into an XmlWriter。
我还使用XmlWriter.WriteRaw
将XML片段输出到xml节点中。该文档片段没有遵循好的标识。上面文章中给出的答案不适用于XML片段。好吧,我可以用XmlReader
读取片段,但是WriteNode
不适用于文档片段(请参阅http://msdn.microsoft.com/en-us/library/1wd6aw1b.aspx)。
关于如何作弊以获得适当缩进的任何提示?
感谢任何提示
您可以在包含xml片段的内存中构建有效的Xml文档。然后使用XmlReader
阅读此文档(例如,使用MemoryStream
),然后让XmlWriter
写入缩进的xml。
一种更快的方法是通过操作字符串自己缩进xml。搜索<
,增加嵌套级别并添加缩进空间。如果找到</
或自闭合标签,请降低嵌套级别并附加\n
我认为您的问题没有快速的[[]]解决方案,但是我可能错了...