10

任何人都知道如何将 System.Xml.XmlNode 转换为 System.Xml.Linq.XNode?

4

3 回答 3

12

Eric White 的博客是进行酷 XML/XLINQ 转换等的地方。我知道这个问题早于发布,但我在查看其他 Q 时发现了它,所以也许人们仍然会遇到这个问题。他的博客有很多优化的 LINQ,就像我怀疑对原始响应的 .Parse() 调用不是最佳的,事实上我知道它不是。

Parse 将要求一次性加载 XML,Eric 使用扩展方法来处理与 XmlReader/Writer 的 XML 转换。这些方法能够对输入进行流式传输,因此如果您的 XML 具有任何实质性大小,则必须使用它们。

于 2009-05-06T05:39:07.557 回答
11

我从未尝试过,但我的第一个想法是:

XmlNode myNode;
XNode translatedNode = XDocument.Parse(myNode.OuterXml);
于 2008-10-23T20:38:41.177 回答
0

我不认为有,但你为什么需要呢?每个都是 XML 结构的最低“叶子”,用于不同的文档读取方式。

如果您使用 Linq to Xml 和 XDocument,您将拥有所有 linq 样式的语法和新功能,但实际上所有这些都是关于选择节点的。

一旦有了要处理的元素,为什么需要切换?

于 2008-10-23T20:26:14.663 回答