无法创建类型的实体框架中一个恒定值“System.Object的' [英] Unable to create a constant value of type 'System.Object' in Entity Framework
问题描述
我 UserTenders
具有 aspnet_Membership
表中的许多一对一的关系命名的表。结果
我使用的EntityFramework 4.0,当我尝试这样的事情,它的错误。
I have a table named UserTenders
having many-to-one relationship with aspnet_Membership
table.
I am using EntityFramework 4.0 and when I try something like this, it errors.
var tenders = ctx.UserTenders
.Where(tender => tender.HasAdminApproved.Equals(true))
.ToList();
该错误是
System.NotSupportedException结果
无法创建类型的常值'System.Object的'。结果
只有原始类型('如的Int32,String和的Guid')在这方面的支持。
System.NotSupportedException
Unable to create a constant value of type 'System.Object'.
Only primitive types ('such as Int32, String, and Guid') are supported in this context.
这个片段下方的作品。
This snippet below works.
var tenders = ctx.UserTenders.ToList();
怎么可能是错在我的code?觉得我失去了一些东西很琐碎。
What could be wrong in my code? Feel like I am missing something very trivial.
我想过滤所有那些具有位
字段 HasAdminApproved
为行真正
I would like to filter all those rows that have the bit
field HasAdminApproved
as true
推荐答案
尝试更换
.Where(tender => tender.HasAdminApproved.Equals(true))
使用:
.Where(tender => tender.HasAdminApproved == true)
或者像$ P $由@Ladislav Mrnka pviously建议,如果你的字段是布尔?
.Where(tender => tender.HasAdminApproved)
这篇关于无法创建类型的实体框架中一个恒定值“System.Object的'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!