gpt4 book ai didi

c# - 在 DataTable 上使用 LINQ 的 .Any()

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

我有一个加载了一些记录的数据表,然后我从另一个文件中提取查询,并想检查我在此查询中提取的 ID 是否存在于我的数据表中。

foreach (var item in records)
{
bool hasit = dt.AsEnumerable().Any(p => p.Field<string>(0) == item.ID);
if (!hasit)
{
//Logic
}
}

我正在使用那个 .Any() 函数,如果数据表的第一个字段中有一个 ID 与记录集合中的 ID 相匹配,我希望它返回 true。它不断返回错误,但我错过了什么吗?有一个更好的方法吗?

最佳答案

I'm using that .Any() function and expecting it to return true if there is an ID in the first field of the datatable that matches the id in the records collection. It continually returns false

当使用 == 时,它比较对象引用。我建议您改为使用 Equals,它只是比较值。因此,将您的陈述更改为

dt.AsEnumerable().Any(p => p.Field<string>(0).Equals(item.ID))

这将实现您的期望。

关于c# - 在 DataTable 上使用 LINQ 的 .Any(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18470481/

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