Выбор сущностей из массива - PullRequest
2 голосов
/ 07 декабря 2011

У меня есть коллекция идентификаторов и коллекция сущностей с идентификаторами.

То, что я хочу сделать, - это создать отдельный запрос, который находит те записи, которые соответствуют идентификаторам в первых коллекциях.

Так, например, коллекция идентификаторов содержит «2» и «3», а коллекция сущностей содержит сущности с идентификаторами от одного до десяти. Я хотел бы получить записи с идентификаторами «2» и «3».

Можно ли это сделать одним запросом? Если да, то как?

Спасибо.

Ответы [ 2 ]

5 голосов
/ 07 декабря 2011

Использование Contains()

Опция 1

List<int> myFilter = new List<int>() { 2, 3 };
var myResults = from foo in myEntities
                where myFilter.Contains(foo.ID)
                select foo;

Опция 2

List<int> myFilter = new List<int>() { 2, 3 };
var myResults = myEntities.Where(x => myFilter.Contains(x.ID));
2 голосов
/ 07 декабря 2011
var idCollection = new[] {'2', '3'};
var result = entitiescollection.Where(e => idCollection.Contains(e.Id));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...