Как использовать оператор IN в linq - PullRequest
8 голосов
/ 11 июня 2010

Я запрашиваю представление и фильтрую результаты по столбцу с именем status. Я хотел бы запросить его, чтобы я мог искать строки с другим статусом, используя оператор IN, как я делал бы в SQL.

Как так:

ВЫБРАТЬ * ОТ ВИДА ГДЕ Статус в ('....', '.....')

Как мне этого добиться?

1 Ответ

18 голосов
/ 11 июня 2010

Если ваше выражение запроса использует метод Contains объекта IEnumerable, анализатор превратит его в выражение IN, используя значения в IEnumerable.

List<string> foo = new List<string>() { "a", "b", "c" };

var query = dataContext.View.Where(v => foo.Contains(v.Status));
...