Две таблици (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)
Вторият подход е по-четлив и поддържаем, тъй като се свързва с enum, но не мога да намеря конструкция в EF, която да ми позволява да направя това.
Това е текущата версия на EF, а не .Net 4.0.
В обобщение, това, което искам да направя в SQL, е лесно, просто трябва да е в EF;
Select * From MainTable Where EventTypeId In (1,3);