如何使用 Linq 在查找列表中获取匹配项
本文关键字:获取 列表 何使用 Linq 查找 | 更新日期: 2023-09-27 18:32:53
我正在尝试找到一种使用 Linq 实现以下目标的方法。
我有一个查找列表,其中包含一个包含 3 条信息的类:
int Period
int MinValue
int MaxValue
我还有一个包含产品的数据库 - 每个产品都包含与查找列表中相同的 3 个变量。
我想返回周期与查找列表中的条目匹配的产品,最小值>= 和最大值 <= 查找列表中的条目。
var q = products.Where(x => ...
有人帮忙吗?
试试这个:
var q = products.Where(x => LookupList.Any(
s => s.Period == x.Period &&
x.MinValue >= s.MinValue &&
x.MaxValue <= s.MaxValue));
据我了解,可以使用以下语句过滤序列。
var q = products.Where(
x => Lookp.Any( y => x.Period == y.Period
&& x.MinValue >= y.MinValue
&& x.MaxValue <= y.MaxValue) );
在这里,x
是 products
成员的变量,y
是 Lookup
成员的变量。