Две таблицы (MainTable и EventType). EventType представлен в коде как перечисление и имеет внешний ключ в базе данных, чтобы он выглядел следующим образом;
Public enum EventTypeId As Integer
Blah = 1
Blurgh = 2
Whoo = 3
End Enum
Я могу нормально выполнить следующий запрос;
From M in dbx.MainTable Where M.EventType.EventTypeId = 1
Но я не могу этого сделать (псевдокод);
From M in dbx.MainTable Where M.EventType.EventTypeId.Contains(EventTypeId.Blah,EventTypeId.Whoo)
Второй подход более удобен для чтения и сопровождения, поскольку он связан с перечислением, но я не могу найти конструкцию в EF, которая позволила бы мне это сделать.
Это текущая версия EF, а не .Net 4.0.
Таким образом, то, что я хочу сделать в SQL, легко, это просто должно быть в EF;
Select * From MainTable Where EventTypeId In (1,3);