对linq这个查询感到困惑
本文关键字:查询 linq | 更新日期: 2024-09-23 10:06:53
我有一个这样的xml文件。
<Accounts>
<Account Id="">
<UserName/>
<Password/>
<AddingDate/>
<AccountType/>
</Account>
</Accounts>
我想做的是,如果第一个元素的attaribute值不为空,则返回true或false
private bool IsListEmpty(){
XDocument doc = XDocument.Load("UserAccounts.xml");
var c = from p in doc.Descendants("Account")
where p.Element("Id").Value == ""
select p.Value;
if(c==null)return......
}
但我被卡住了。如何进行
只需在LINQ上使用FirstOrDefault()
,然后检查Id属性是否为空:
var account = doc.Descendants("Account").FirstOrDefault();
return account != null && !string.IsNullOrEmpty(account.Attribute("Id").Value)
不确定我是否理解正确,但我认为是这样。任何人都会成功。
XElement xelement = XElement.Load("UserAccounts.xml");
return xelement.Elements("Account").Where(x => string.IsNullOrEmpty((string)x.Element("Id"))).Any();
如果发现一个元素为"