0

我必须使用 C# 分析具有特殊命名空间的 XML 文档,我从这篇文章中得到了一些想法。但是我的代码未能得到预期的 XML 节点,因为 XML 结构非常特殊......

XML的根节点中有一个命名空间

<MDOC xmlns="urn:schemas-microsoft-com/PSS/PSS_Survey01">

这是我获取此根节点的代码

        XmlDocument doc = new XmlDocument();
        doc.Load(path);

        XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable);
        nsmgr.AddNamespace("urn", "schemas-microsoft-com/PSS/PSS_Survey01");

        XmlNode root = doc.SelectSingleNode("MDOC", nsmgr);

帮我!

4

1 回答 1

3

我不确定您的 XML 结构有什么特别之处。

我会以不同的方式编写代码

string xmlNamespace = String.Empty;
XmlNamespaceManager nsmgr;
XmlNodeList nodeInfo = FABRequestXML.GetElementsByTagName("RootNodeName");
xmlNamespace = Convert.ToString(nodeInfo[0].Attributes["xmlns"].Value);
nsmgr = new XmlNamespaceManager(MyXml.NameTable);
nsmgr.AddNamespace("AB", xmlNamespace);

XmlNode myNode = MyXml.DocumentElement.SelectSingleNode("AB:NodeName", nsmgr);

希望有帮助

于 2012-11-27T09:35:37.850 回答