【发布时间】:2015-12-16 02:36:30
【问题描述】:
在我们的项目中,我们有一段代码如下所示:
return (productEvents.Where(s => event.Equals(s.Type)));
其中event 和s.Type 都属于枚举类型EventType。
但在运行时,它会抛出异常并显示此消息
无法将类型“EventType”转换为类型“System.Object”。 LINQ 到 实体仅支持转换 EDM 基元或枚举类型。
【问题讨论】:
-
这里的
event是什么?你如何定义enum -
不能使用event作为变量名,必须使用@event,因为event是C#中的关键字
-
Type 表示对象的类型,我认为你要么有错字,要么你不应该有名为 type 的枚举
-
您是否尝试过
s => s.Type == event使用Equals 方法? -
您确实需要提供minimal reproducible example。