请有人发布一个示例,说明如何使用linq检查xml文件中是否存在元素?
这是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>
我希望能够指定一个数字并检查它是否存在
答案 0 :(得分:9)
怎么样:
public static bool HasNumber(XDocument doc, string number)
{
return doc.Descendants("Number")
.Any(element => element.Value == number);
}
(有一点需要注意 - 你对XML文件中的数字进行了引号看起来有点奇怪。你必须拥有它们吗?)
答案 1 :(得分:2)
我认为应该这样做。
var exists = xml.Descendants("Number")
.Any(e => String.Equals(
(string)e,
number,
StringComparison.OrdinalIgnoreCase))