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