2020年11月26日 星期四

【C#】XDocument Descendants() 取不到東西

 string xml = @"<?xml version='1.0' encoding='utf-8'?>
                <ComputerBuildReportRequest xmlns:i='http://www.w3.org/2001/XMLSchema-instance' xmlns='http://schemas.ms.it.oem/digitaldistribution/2010/10'>
                    <Bindings>
                        <Binding>
                            <ProductKeyID>1000000002</ProductKeyID>
                            <HardwareHash>xxx</HardwareHash>
                            <HXSpecifics>
                                <UnitPartNumber>123456-789</UnitPartNumber>
                            </HXSpecifics>
                        </Binding>
                        <Binding>
                            <ProductKeyID>1000000003</ProductKeyID>
                            <HardwareHash>yyy</HardwareHash>
                            <HXSpecifics>
                                <UnitPartNumber>123456-787</UnitPartNumber>
                            </HXSpecifics>
                        </Binding>
                      </Bindings>
                </ComputerBuildReportRequest>";
XDocument doc = XDocument.Parse(xml);
var elements = doc.Descendants("Binding"); // empty
以前就碰過,一直懶得研究 XDocument 到底為什麼有時候會秀逗,直接改用 XmlDocument。 這次碰到非用不可的情況,就藉機深究下。 

2020年6月27日 星期六