6
我开始使用LinqKit的PredicateBuilder来创建带有OR条件的谓词,这对Linq表达式来说是不可能的。LinqKit PredicateBuilder返回全部或非行
我面临的问题是,如果我有PredicateBuilder.True<MyEntity>()
它返回所有行开始,如果我PredicateBuilder.False<MyEntity>()
开始它从我用什么表情返回非行,除了!请看下面的代码:
var pre = PredicateBuilder.True<MyEntity>();
pre.And(m => m.IsActive == true);
using (var db = new TestEntities())
{
var list = db.MyEntity.AsExpandable().Where(pre).ToList();
dataGridView1.DataSource = list;
}
它应该返回具有IsActive == true的行,但它会返回所有行!
我尝试过所有可能的组合PredicateBuilder.True
| PredicateBuilder.False
与And
| Or
方法,非他们的作品!
OMG !!这是一个愚蠢的错误。我在3年前对'string.Replace'方法犯了同样的错误!!!非常感谢你。 – Ashkan 2013-03-10 17:44:15
感谢您的澄清 – leen3o 2015-10-18 09:02:22