我试图将一些使用XmlDocument类的代码重构为Linq To Xml。但是,我不确定XDocument中innerXml和outerXml的对应部分是什么?
答案 0 :(得分:0)
根据MSDN,InnerXml
返回当前节点的子节点的标记,OuterXml
返回当前节点的标记和其所有子节点。
因此,要获得类似于OuterXml
的字符串结果,您可以尝试使用简单的ToString()
方法。但是没有内置方法返回类似于InnerXml
的结果。模拟InnerXml
功能的可能方法是,通过为当前节点的每个子节点调用ToString()
,然后将这些字符串连接成单个字符串结果:
XDocument xdoc;
........
var currentNode = xdoc.Root;
var innerXml = string.Join("", currentNode.Elements().Select(o => o.ToString()));
您可以选择使上面的代码成为XElement
的扩展方法,以使其更易于使用。