检查linq中是否存在xml属性失败
本文关键字:xml 属性 失败 存在 是否 linq 检查 | 更新日期: 2023-09-27 18:24:42
我有一个"IEnumerable"列表,所有相同的元素:"elem1",我通过得到的
IEnumerable <XElement> childList =
from el in sessionXML.DescendantsAndSelf().Elements("elem1")
select el;
childList:
<elem1 att1= "..." att2= "..."> </elem1>
<elem1 att1= "..." att2= "..." att3 = "..."> </elem1>
<elem1 att1> </elem1>
并非所有元素都具有相同的属性。我正在尝试检查att3的存在,如果是的话,我想打印这个元素,当我做下面的代码时,它仍然会给我一个"对象引用没有设置为对象的实例"错误:
foreach (XElement e in childList)
{
//Check if attribute "target" exists
if (e.Attribute("att3").Value != null)
{
Console.writeLine(e);
}
}
检查.Value
或null
对象上的任何其他属性是非法的:
if (e.Attribute("att3") != null)