Мне нужно получить список объектов из моей базы данных, который соответствует списку элементов в простом списке (не EF). Возможно ли это с Entity Framework 4.1?
Пример:
var list = new List<string> { "abc", "def", "ghi" };
var items = from i in context.Items
where list.Contains(i.Name)
select i;
Это прекрасно работает для возврата строк, которые соответствуют одному свойству, но на самом деле у меня есть более сложное свойство:
var list = new List<Tuple<string, string>>
{
new Tuple<string,string>("abc", "123"),
new Tuple<string,string>("def", "456")
};
// i need to write a query something like this:
var items = from i in context.Items
where list.Contains(new Tuple<string,string>(i.Name, i.Type))
select i;
Я знаю, что это недопустимо, потому что будет сказано, что это должен быть примитивный тип, но есть ли способ сделать то, что я пытаюсь выполнить, или мне нужно будет прибегнуть к хранимой процедуре?