我想写一个相当于
select * from Users
where Username in ('something@somewhere.com', 'someone@somehting.com')
是否可以在 LINQ 中编写此代码?
我想写一个相当于
select * from Users
where Username in ('something@somewhere.com', 'someone@somehting.com')
是否可以在 LINQ 中编写此代码?
为了复制 IN 子句的功能,您必须拥有(或创建)一个集合并检查该集合是否包含您正在寻找的值。
var search = new string[] {"something@somewhere.com", "someone@somehting.com"};
var results = Users.Where(u => search.Contains(u.Username));
或者,您可以使用非常懒惰的解决方案
DbEntities db = new DbEntities();
var users = db.Users.where(u => u.Username == "something@somewhere.com" || u.Username == "someone@somehting.com");
非常懒惰(初学者 LINQ 开发人员很容易学习)。