class Program
{
static void Main(string[] args)
{
Method1();
Method2();
}
public static void Method1()
{
XmlDocument xml = new XmlDocument();
/****************************xml要做替换操作************************************/
xml.LoadXml(Program.xml.Replace("xmlns=\"http://xxx.xxx.xxx/xxxx/xxx/\"", string.Empty));
/****************************xml要做替换操作************************************/
var result2 = xml.SelectNodes("//TResult");
}
public static void Method2()
{
XmlDocument xml = new XmlDocument();
xml.LoadXml(Program.xml);
XmlNamespaceManager xnm = new XmlNamespaceManager(xml.NameTable);
xnm.AddNamespace("s", "http://schemas.xmlsoap.org/soap/envelope/");
xnm.AddNamespace("a", "http://schemas.microsoft.com/2003/10/Serialization/Arrays");
xnm.AddNamespace("i", "http://www.w3.org/2001/XMLSchema-instance");
xnm.AddNamespace("myDefault", "http://xxx.xxx.xxx/xxxx/xxx/");/*此处需要自定义一个命名空间名字*/
var result = xml.SelectNodes("s:Envelope/s:Body/myDefault:STR/myDefault:TR/a:KeyValueOfstringArrayOfTRF/a:Value", xnm);
}
public static void Method3()
{
XmlDocument xml = new XmlDocument();
xml.LoadXml(Program.xml);
XmlNamespaceManager xnm = new XmlNamespaceManager(xml.NameTable);
xnm.AddNamespace("s", "http://schemas.xmlsoap.org/soap/envelope/");
xnm.AddNamespace("a", "http://schemas.microsoft.com/2003/10/Serialization/Arrays");
xnm.AddNamespace("i", "http://www.w3.org/2001/XMLSchema-instance");
xnm.AddNamespace("myDefault", "http://xxx.xxx.xxx/xxxx/xxx/");/*此处需要自定义一个命名空间名字*/
var result2 = xml.SelectNodes("//myDefault:TrackingResult", xnm);
}
private static string xml = "<s:Envelope xmlns:s=\"http://schemas.xmlsoap.org/soap/envelope/\"><s:Body><STR xmlns=\"http://xxx.xxx.xxx/xxxx/xxx/\"><Transaction xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\"><Reference1/><Reference2/><Reference3/><Reference4/><Reference5/></Transaction><Notifications xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\"/><HasErrors>false</HasErrors><TR xmlns:a=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\" xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\"><a:KeyValueOfstringArrayOfTRF><a:Key>31633945195</a:Key><a:Value><TResult>value1</TResult><TResult>value2</TResult></a:Value></a:KeyValueOfstringArrayOfTRF></TR><NonExistingWaybills xmlns:a=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\" xmlns:i=\"http://www.w3.org/2001/XMLSchema-instance\"/></STR></s:Body></s:Envelope>";
}
C# 解析带有默认命名空间的XML
最新推荐文章于 2023-06-22 16:15:26 发布