2015-12-31 2 views
1

Я пытаюсь выбрать, откуда в базе данных использовать Linq. Запрос я бы пытаться воспроизвести это:SQL Select Where In преобразован в Linq

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

Как это может быть написано в лямбда, если у меня есть список UserIds.

Я застрял там, где есть !! являются и имеют список UserIds:

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

HTTP://stackoverflow.com/questions/1949 30/как-делать-я потребительной-containsstring LINQ-вместо-оф-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));