2015-12-31 43 views
1

我想從使用Linq的數據庫中選擇位置。我試圖重現的查詢是:SQL選擇轉換爲Linq的位置

"Select * From Avatars Where userId IN (1, 2, 3)" 

如果我有一個用戶標識列表,這怎麼寫入lambda?

我卡在哪裏!是和有用戶id的列表:

context.avatars.Where(a => a.userId == !!(userIds)!!) 
+0

HTTP:/ /stackoverflow.com/questions/1949 30 /怎麼辦,我使用-LINQ-containsstring,而不是-,containsstring的 – lazy

回答

5

您可以使用Contains方法:

var result=context.avatars.Where(a => userIds.Contains(a.userId)); 

或者Any

var result=context.avatars.Where(a => userIds.Any(e=>a.userId==e)); 
4

類似:

context.avatars.Where(a => new[] { 1, 2, 3 }.Contains(a.userId));