如何判断Xnode是否为XElement类型
本文关键字:是否 XElement 类型 Xnode 何判断 判断 | 更新日期: 2023-09-27 18:27:52
我正在从所有Descendant Nodes元素的列表中运行linQ查询。我想区分并过滤掉XElement类型。除了使用.toString()并将其与"Element"进行比较之外,我还能如何做到这一点?
string filename = @"C:'MyFiles'Programming'XML'MobileResponse2.xml";
var elem = XElement.Load(filename);
var query = from c in elem.DescendantNodes()
where c.NodeType.ToString() == "Element"
select c;
注意:我可以用elem。Descendant或elements(),但我正试图弄清楚如果对象是特定类型的,如何签入"Where"子句?
我本来打算去
where c.NodeType.ToString() is XElement
但那没用。
编辑:刚刚注意到您的"Note";)
var query = elem.DescendantNodes().Where (w => w is XElement);
试试这个
string filename = @"C:'MyFiles'Programming'XML'MobileResponse2.xml";
var elem = XElement.Load(filename);
var query = from c in elem.DescendantNodes()
where c is XElement
select c;