使用xmlnamespacemanager添加

使用xmlnamespacemanager添加

我试图从XML File中读取数据。在此元素中,前缀是“app”和“gml”文本。由于这些前缀,我无法读取数据。为此,我尝试使用xmlnamespacemanager添加名称空间,但没有得到。
编辑:

        XmlDocument xmlDoc = new XmlDocument();
        xmlDoc.Load(new StringReader(strResult));
        NameTable nt = new NameTable();
        XmlNamespaceManager prefix = new XmlNamespaceManager(nt);
        string nmspc = xmlDoc.DocumentElement.NamespaceURI;
        prefix.AddNamespace("app:",xmlDoc.DocumentElement.NamespaceURI);

        prefix.PushScope();

这里的strresult包含XML Data

最佳答案

类似于:

var doc = new XmlDocument();
doc.Load(source);
var nsmgr = new XmlNamespaceManager(doc.NameTable);
nsmgr.AddNamespace("app", "http://www.weather.gov/forecasts/xml/OGC_services");
var firstPoint = doc.SelectSingleNode("//app:Forecast_Gml2Point", nsmgr);

请注意,名称空间别名只是一种方便,不必在文档和名称空间管理器之间进行匹配,但如果它们匹配,则可能更容易。

08-26 18:17