布尔LINQ问题
本文关键字:问题 LINQ 布尔 | 更新日期: 2023-09-27 18:07:30
我有一个字段在我的数据库表称为IsActive
,可以是True
或False
。但是,当我查询数据库时,我的查询还返回非活动行:
这是我的LINQ查询
var j = from x in db.DashboardMenus
where x.ParentID == c.SiteMenuID && c.IsActive == true
orderby x.SortOrder ascending
select x;
您的查询中有一个错别字。当您应该使用x.IsActive
时,您正在使用c.IsActive
,因为这是您试图查询的表对象。否则,它将返回所有x
对象,其中ParentID和SiteMenuID匹配,只要c
是活动的(这似乎是你的问题)。
var j = from x in db.DashboardMenus
where x.ParentID == c.SiteMenuID && x.IsActive
orderby x.SortOrder ascending
select x;
在将来,您可能会得到更好的服务,有更多的描述性(和更长的)变量名(甚至对于LINQ查询),以更好地确保您不会再遇到这个问题。