我需要操作现有的XML文档,并从中创建一个新的文档,删除一些节点和属性,并且可能添加新的文档,最好的一组类是什么?
有许多用于XML操作的.NET类,我不确定最佳方法是什么。
答案 0 :(得分:13)
如果它是一个非常庞大的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");
答案 1 :(得分:4)
使用Linq to XML You can see the XDocument class here
答案 2 :(得分:2)
如果只是转换过程,使用XML样式表解析文档可能是最简单的选择。
Here is how to use XSLT in .NET.
和
Here is an introduction to XSLT.
起初它让我感到困惑,但现在我几乎使用XSLT来完成所有的XML转换。
答案 3 :(得分:1)
如果您有官方架构,则可以使用XmlSerializer。否则最好使用XmlDocument,XmlNode,XmlElement等类。
否则它也可能取决于您使用xml的内容,即标记某些文档,表示对象等。