如何将Linq-to-sql用于这样的搜索:
其中obj.id等于以下任何{1,2,3,4}
我猜我可以使用in或者包含?
其中obj.id在Enumerable.Range((int)myEnum.Start,(int)myEnum.End))?
答案 0 :(得分:5)
您可以使用.Contains()
,如下所示:
var list = new List<int> { 1, 2, 3, 5 };
var result = from s in DB.Something
where list.Contains(s.Id)
select s;
这将转换为参数化形式:
WHERE Id IN (1, 2, 3, 5)
答案 1 :(得分:0)
var myCustomers = new short[] {1,2,3,4};
var foo = db.Customers.Where(c=> myCustomers.Contains(c.ID));