Linq to Entities - SQL“IN”子句在T-SQL中,您可以进行如下查询:SELECT * FROM Users WHERE User_Rights IN ("Admin", "User", "Limited")您如何在LINQ to Entities查询中复制它?它甚至可能吗?
3 回答
智慧大石
TA贡献1946条经验 获得超3个赞
在这种情况下,我会选择Inner Join。如果我会使用contains,它会迭代6次,尽管事实上只有一个匹配。
var desiredNames = new[] { "Pankaj", "Garg" }; var people = new[] { new { FirstName="Pankaj", Surname="Garg" }, new { FirstName="Marc", Surname="Gravell" }, new { FirstName="Jeff", Surname="Atwood" } }; var records = (from p in people join filtered in desiredNames on p.FirstName equals filtered select p.FirstName).ToList();
包含的缺点
假设我有两个列表对象。
List 1 List 2 1 12 2 7 3 8 4 98 5 9 6 10 7 6
使用Contains,它将搜索List 2中的每个List 1项,这意味着迭代将发生49次!
- 3 回答
- 0 关注
- 390 浏览
添加回答
举报
0/150
提交
取消