在.NET中操作XML的最佳方法

我需要操作现有的XML文档,并从中创建一个新文档,删除一些节点和属性,并可能添加新的文档,最好的一组类来实现这一目标?

有很多用于XML操作的.NET类,我不确定这样做的最佳方法是什么。

如果它是一个非常庞大的XML,不能适应内存,你应该使用XmlReader / XmlWriter 。 如果不是LINQ to XML非常容易使用。 如果您没有.NET 3.5,则可以使用XmlDocument 。

以下是删除节点的示例:

using System.Xml.Linq; using System.Xml.XPath; var doc = XElement.Load("test.xml"); doc.XPathSelectElement("//customer").Remove(); doc.Save("test.xml"); 

使用Linq to XML 您可以在此处查看XDocument类

如果只是转换过程,使用XML样式表解析文档可能是最简单的选择。

以下是如何在.NET中使用XSLT。

以下是XSLT的介绍。

起初它让我有点困惑,但现在我几乎使用XSLT来完成所有的XML转换。

如果您有官方架构,则可以使用XmlSerializer。 否则最好使用XmlDocument,XmlNode,XmlElement等类。

否则它也可能取决于您使用xml的内容,即标记某些文档,表示对象等。