我不确定这是否可行。我想创建一个包含一些简单id的数组(或列表/字典),并在lambda表达式中使用数组(或其他)。
以下示例应返回UserId的15850和15858
DbDataContext db = new DbDataContext();
int[] userIds = {15850, 15858};
var users = db.tblUsers.Where(x => x.UserId.Equals(userIds));
可能与否?
由于
答案 0 :(得分:8)
这是可能的,并将转换为SQL WHERE IN (...)
语句,但它在linq中被写成了一种倒退:
DbDataContext db = new DbDataContext();
int[] userIds = {15850, 15858};
var users = db.tblUsers.Where(x => userIds.Contains(x.UserId));