如何使用Linq从实体中选择多行
我想写一个LINQ查询,相当于如何使用Linq从实体中选择多行,linq,entity-framework,linq-to-sql,linq-to-entities,Linq,Entity Framework,Linq To Sql,Linq To Entities,我想写一个LINQ查询,相当于 从用户中选择* 其中用户名位于('something@somewhere.com', 'someone@somehting.com') 是否可以在LINQ中编写此代码?为了复制in子句的功能,您必须拥有(或创建)一个集合,并检查该集合是否包含您要查找的值 var search = new string[] {"something@somewhere.com", "someone@somehting.com"}; var results = Users.Wher
从用户中选择*
其中用户名位于('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开发新手替代)。如果你不知道要搜索的用户名数量,这个解决方案很难。谢谢D Stanley。这对我有用。感谢您的快速输入。