1
<feed>
    <entry>
        <data>1234</data>
        <content>Stackoverflow</content>
    </entry>
</feed>
Next data..

我必须在 c# 中使用 xpath 创建上面的 xml 是否可以这样做..

我已经使用下面的代码完成了 xml 文件

                    XmlDocument xmlDoc = new XmlDocument();
        xmlDoc.Load(@"C:\Log_Data.xml");

        XmlElement newelement = xmlDoc.CreateElement("entry");
        XmlElement xmldata = xmlDoc.CreateElement("data");
                    XmlElement xmlcontent = xmlDoc.CreateElement("content");

                    xmldata.InnerText ="1234" ;
        xmlcontent.InnerText ="Stackoverflow";

                    newelement.AppendChild(xmldata);
        newelement.AppendChild(xmlcontent);

                    xmlDoc.DocumentElement.AppendChild(newelement);
        xmlDoc.Save(@"C:\Log_Data.xml");

但是我必须像在 sql 中那样使用 Xpath 来编写像“插入表......” 这样的查询,如果在 .Net 2.0 中可能的话

4

2 回答 2

2

XPath 是一种用于 XML 文档的查询语言。因此,它不提供更改(删除或插入节点)XML 文档的能力

创建或更改 XML 文档(称为 XML 转换)的最合适的方法之一是使用 XSLT——一种专为 XML 转换而设计的语言。

从 C# 可以使用 .NET XslCompiledTransform类来执行任何 XSLT 1.0 转换。

XSLT 2.0 存在第三方 .NET 实现。

于 2012-10-14T14:57:55.513 回答
0

您必须创建自己的XPath parser才能实现这一目标。可以在这里找到它的简单实现。

于 2012-10-14T11:37:53.260 回答