该查询将仅返回Active = true和Exempt = false的所有记录。它也应该返回Active = true和Exempt IS NULL的所有记录。我猜.IsNotEqualTo不能与任何具有空值的记录进行比较?是否可以解决此问题而不设置默认值?
UserCollection ActiveUsersNotExempt = new UserCollection();
ActiveUsersNotExempt = DB.Select().From<User>()
.Where(User.Columns.Active).IsEqualTo(true)
.And(User.Columns.Exempt).IsNotEqualTo(true)
.ExecuteAsCollection<UserCollection>();`
最佳答案
如下使用AndExpression来获取嵌套约束(豁免不为true或为null):
UserCollection ActiveUsersNotExempt = DB.Select().From<User>()
.Where(User.Columns.Active).IsEqualTo(true)
.AndExpression(User.Columns.Exempt).IsNotEqualTo(true)
.Or(User.Columns.Exempt).IsNull()
.ExecuteAsCollection<UserCollection>();`
关于c# - .IsNotEqualTo不比较Null,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/916596/