我必须使用 C# 分析具有特殊命名空间的 XML 文档,我从 this post 得到了一些想法.但是我的代码没有得到预期的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);
帮我!
最佳答案
我不确定您的 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);
希望有帮助
关于c# - 如何使用 C# 选择带有 XML 命名空间的 XML 节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13580945/