gpt4 book ai didi

c# - LINQ 查询检查一个集合是否包含两个具有特定值的记录?

转载 作者:行者123 更新时间:2023-11-30 18:56:14 25 4
gpt4 key购买 nike

我正在寻找一个查询,只有当一组数据至少有一条记录为 State == 0 并且另一条记录为 State > 0 时才返回 true

我有这个方法:

  public bool HasHistory(Guid id)
{
return GetHistory(id).Any(x => x.State == 0); //&&x.State > 0 ?!
}

我不知道如何完成这个,因为大多数 LINQ 扩展方法分别迭代每个元素!

最佳答案

这个有什么问题?

  public bool HasHistory(Guid id)
{
var history = GetHistory(id);
return history.Any(x => x.State == 0) && history.Any(x => x.State > 0);
}

实际上,如果您处理的是大数据,那很糟糕,因为您枚举集合 2 次而不是一次。否则,只需使用此解决方案即可。

关于c# - LINQ 查询检查一个集合是否包含两个具有特定值的记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45053601/

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