我将问一个非常基本的问题,可能是一个重复的问题,但我的情况有点不同。 我想在Linq中使用“in”运算符。 我必须从提供Id的表中获取所有行 通过我的数组并返回该行(如果有)。我怎么能这样做。
我的数组有
var aa =“1091”,“1092”,“1093”等等。
我的表使用这些ID作为主键 。我必须得到Id包含在数组中的所有行,我不想使用S.P。
答案 0 :(得分:2)
您可以使用Enumerable.Contains,
var aa = new string[3] { "1091", "1092", "1093" };
var res = yourDataSource.Where(c => aa.Contains(c.ID));
答案 1 :(得分:1)
IN
语句是在Contains
来电中使用Where
创建的。假设你使用整数作为ID,你可以这样写:
var myArray=new[]{1091,1092,1094};
var myEntities=from entity in myTable
where myArray.Contains(entity.ID)
select entity;