如何从具有数组条件的列表中进行选择

本文关键字:列表 行选 选择 条件 数组 | 更新日期: 2024-09-23 05:06:50

我想从具有数组条件的列表中进行选择

我想做

var res = from r in liste where r.id1==array1 ||r.id2==arry1  select r;

array1和array2是包含ids 的数组

我该怎么做

如何从具有数组条件的列表中进行选择

如果您想要list中包含array1中的id1array2中包含的id2的项目,可以执行以下操作:

var res = from r in list where array1.Contains(r.id1) || array2.Contains(r.id2) select r;

编辑:如果id1id2可以为空,则int s:

var res = from r in list 
          where r.id1.HasValue && array1.Contains(r.id1.Value) || 
                r.id2.HasValue && array2.Contains(r.id2.Value) 
          select r;

Where函数还有一个索引参数:

   var res = liste.Where((r, i) => r.id1 == array1[i] || r.id2 == array1[i]);