我试图从以下 XML 文本中获取元素的值,但除非我从元素Address
中删除,否则找不到它。但是,即使使用它,XML 也是有效的。这里有什么问题?xmlns="http://www.foo.com"
Root
由于我是从 Web 服务获取 XML 文本,因此我无法控制它,但xmlns
如果我不得不作为最后的手段,我可以删除该部分。
<?xml version="1.0" encoding="utf-8"?>
<Root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://www.foo.com">
<Address>Main St SW</Address>
</Root>
var doc = XDocument.Parse(xmlTextAbove);
var address = doc.Descendants().Where(o => o.Name == "Address").FirstOrDefault();
Console.WriteLine(address.Value); // <-- error, address is null.