C# 如何选择具有LINQ to XML中命名空间的XML节点
我有一个以下格式的xml文档C# 如何选择具有LINQ to XML中命名空间的XML节点,c#,xml,xml-namespaces,C#,Xml,Xml Namespaces,我有一个以下格式的xml文档 <Abc xmlns="http://qusetons.com/Cdc/AbcSchema.xsd"> <xxx>False</xxx> <yyy>True</yyy> <sss>Pd</sss> </Abc> 现在,下面获取节点值的代码不起作用。我该怎么做才能得到这个代码 doc.XPathSelectElement("/Abc/xxx").value
<Abc xmlns="http://qusetons.com/Cdc/AbcSchema.xsd">
<xxx>False</xxx>
<yyy>True</yyy>
<sss>Pd</sss>
</Abc>
现在,下面获取节点值的代码不起作用。我该怎么做才能得到这个代码
doc.XPathSelectElement("/Abc/xxx").value
试试这个
var doc = XDocument.Parse(data);
var names = new XmlNamespaceManager(new NameTable());
names.AddNamespace("emtpy", "http://qusetons.com/Cdc/AbcSchema.xsd");
Console.WriteLine(doc.XPathSelectElement("/emtpy:Abc/emtpy:xxx", names).Value);
试试这个
var doc = XDocument.Parse(data);
var names = new XmlNamespaceManager(new NameTable());
names.AddNamespace("emtpy", "http://qusetons.com/Cdc/AbcSchema.xsd");
Console.WriteLine(doc.XPathSelectElement("/emtpy:Abc/emtpy:xxx", names).Value);
真的,这是我期待的格式。但是在执行时,我得到了下面的错误“Namespace Manager或XsltContext needed”。非常好,它工作得很好。问题是我没有添加名称作为参数。还有一个问题是如何避免使用空白字符串的“/empty”这可以帮助您找到答案,这是我所期望的格式。但是在执行时,我得到了下面的错误“Namespace Manager或XsltContext needed”。非常好,它工作得很好。问题是我没有添加名称作为参数。还有一个问题是,我如何用空白字符串避免这个“/空”这可以帮助您找到答案
var doc = XDocument.Parse(data);
var names = new XmlNamespaceManager(new NameTable());
names.AddNamespace("emtpy", "http://qusetons.com/Cdc/AbcSchema.xsd");
Console.WriteLine(doc.XPathSelectElement("/emtpy:Abc/emtpy:xxx", names).Value);