Linq - Использование массива в лямбда-выражении для извлечения нескольких записей - PullRequest
5 голосов
/ 18 сентября 2011

Я не уверен, возможно ли это или нет. Я хотел бы создать массив (или список / словарь), содержащий несколько простых идентификаторов и использовать массив (или любой другой) в лямбда-выражении.

В приведенном ниже примере должны быть возвращены значения UserId 15850 и 15858

.
DbDataContext db = new DbDataContext();    
int[] userIds = {15850, 15858};
var users = db.tblUsers.Where(x => x.UserId.Equals(userIds));

Возможно или нет?

Спасибо

1 Ответ

8 голосов
/ 18 сентября 2011

Это возможно и преобразуется в оператор SQL WHERE IN (...), но он написан в обратном порядке в linq:

DbDataContext db = new DbDataContext();    
int[] userIds = {15850, 15858};
var users = db.tblUsers.Where(x => userIds.Contains(x.UserId));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...