gpt4 book ai didi

C# Linq to XML 检查元素是否存在

转载 作者:IT王子 更新时间:2023-10-29 04:21:21 24 4
gpt4 key购买 nike

我有一个 XML 文档如下:

<Database>
<SMS>
<Number>"+447528349828"</Number>
<Date>"09/06/24</Date>
<Time>13:35:01"</Time>
<Message>"Stop"</Message>
</SMS>
<SMS>
<Number>"+447528349828"</Number>
<Date>"09/06/24</Date>
<Time>13:35:01"</Time>
<Message>"Stop"</Message>
</SMS>
</Database>

我正在尝试检查文档中是否存在父 SMS 节点的数字子节点(用于验证目的,以避免插入重复数据)。

对潜在解决方案有什么建议吗?

编辑:该元素将与输入字符串进行比较。例如 if(inputNumber == xmlDocNumber){//不要插入新元素 }

最佳答案

我建议采用与使用 Count() 略有不同的策略 - 使用 Any()。优点是 Any() 可以在获得任何匹配项后立即停止:

var smsWithNoNumber = main.Descendants("SMS")
.Where(x => !x.Elements("Number").Any());

在这种情况下,它不会产生太大的几率,但在 Count() 可能需要计算一百万次点击才能告诉您至少有一次的情况下,这是一个有用的技巧知道。我想说这也更清楚地表明了您的意思。

关于C# Linq to XML 检查元素是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1039628/

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