【发布时间】:2010-02-24 12:56:48
【问题描述】:
两个表(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);
【问题讨论】:
-
我发现a similar question 是关于 LINQ 中的 IN 语句的。
标签: .net entity-framework foreign-keys