我正在开发一个WinRT应用程序,我应该准备一些带有命名空间的XML。现在这对旧的.NET来说还可以,但现在不再有XmlDocument.NameTable了。那么如何创建XmlNamespaceManager?
var XmlDoc = new XmlDocument();
XmlDoc.Load(new FileStream("XMLFile1.xml",FileMode.Open,FileAccess.Read));
var nsm = new XmlNamespaceManager(XmlDoc.NameTable);
nsm.AddNamespace("s", "http://api.facebook.com/1.0/");
答案 0 :(得分:1)
XDocument doc = XDocument.Load(...);
XNamespace ns = "http://api.facebook.com/1.0/";
XElement element = doc.Root.Element(ns + "foo");
阅读一篇很好的LINQ to XML简介或教程,你应该看看如何处理命名空间 - 但它确实比使用XmlDocument
简单得多。您根本不需要命名空间管理器! (可能有一些的情况,它们仍然有用 - 我不确定 - 但我当然不记得自己使用LINQ to XML了。)