3 回答
TA贡献1757条经验 获得超8个赞
我认为这是一个更好的方法(在VB中,不应该难以翻译):
给定XElement x:
Dim xReader = x.CreateReader
xReader.MoveToContent
xReader.ReadInnerXml
TA贡献1829条经验 获得超7个赞
如何在XElement上使用这个“扩展”方法?为我工作!
public static string InnerXml(this XElement element)
{
StringBuilder innerXml = new StringBuilder();
foreach (XNode node in element.Nodes())
{
// append node's xml string to innerXml
innerXml.Append(node.ToString());
}
return innerXml.ToString();
}
或者使用一点Linq
public static string InnerXml(this XElement element)
{
StringBuilder innerXml = new StringBuilder();
doc.Nodes().ToList().ForEach( node => innerXml.Append(node.ToString()));
return innerXml.ToString();
}
注意:上面的代码必须使用element.Nodes()而不是element.Elements()。记住两者之间的区别非常重要。element.Nodes()给你一些像XText,XAttribute等等,但XElement只有一个元素。
- 3 回答
- 0 关注
- 522 浏览
添加回答
举报