Получить записи, где первичный ключ находится в списке <guid>ключей в C # - PullRequest
1 голос
/ 12 ноября 2011

Каков наилучший способ выражения запроса LINQ, если результат запроса содержит только ключи (типа guid), которые содержатся в списке c #?

В TSQL это будет примерно так.

SELECT * FROM MyView WHERE Keys IN (<guid1>,<guid2>,<guid3>)

Ответы [ 2 ]

2 голосов
/ 12 ноября 2011
from row in db.MyView
where yourList.Contains(row.ID)
select row

Предполагая, что yourList равен List<Guid> (некоторые коллекции вызывают исключение, говорящее, что "нет поддерживаемого перевода в SQL", попробуйте его, и если вы получите эту ошибку, убедитесь, что у вас есть список)

1 голос
/ 12 ноября 2011

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

List<Guid> keys = ...

var query = context.MyView.Where(v => keys.Contains(v.KeyColumn));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...