gpt4 book ai didi

c# - 使用 LINQ to XML 按元素属性过滤文档

转载 作者:太空宇宙 更新时间:2023-11-03 20:36:15 25 4
gpt4 key购买 nike

我有这个 XML 文档:

<?xml version="1.0" encoding="UTF-8"?>
<teryt>
<catalog name="TERC" type="all" date="2010-01-01">
<row>
<field name="Woj">1</field>
<field name="City">Warszawa</field>
<field name="Name">Mazowsze</field>
</row>
<row>
<field name="WojId">1</field>
<field name="City"/>
<field name="Name">Mazowsze</field>
</row>
<row>
<field name="Woj">2</field>
<field name="City"/>
<field name="Name">Slask</field>
</row>
</catalog>
</teryt>

现在我只想获取在具有属性 City 的字段中没有值的行(使用 LINQ to XML)。

最佳答案

你的意思是:

var rows = from row in doc.Root.Elements("rows")
where !row.Elements("field")
.Any(x => (string) x.Attribute("name") == "City"
&& x.Value != "")
select row;

也就是说,“查找所有不包含任何非空 field 元素且 name 属性为 City 的行”。我认为这就是你想要的......

关于c# - 使用 LINQ to XML 按元素属性过滤文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4923352/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com