且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

实体框架和谓词生成器-谓词在SQL查询中被忽略

更新时间:2022-06-02 08:47:37

我认为您不需要创建的第一个谓词.这样会不会返回您需要的结果?

I don't think you need the first predicate you create. Wont this return the results you need?

var classFilter = PredicateBuilder.False<ListRecord>();
classFilter = classFilter.Or(x => x.Community == "Air Force");
classFilter = classFilter.Or(x => x.Community == "Navy");

// Add several more predicates just like classFlter

var query = db.ListRecords.AsExpandable().Where(classFilter);
var list = query.ToList();

或带有其他谓词,例如Classfilter:

Or with additional predicates like Classfilter:

var classFilter = PredicateBuilder.False<ListRecord>();
classFilter = classFilter.Or(x => x.Community == "Air Force");
classFilter = classFilter.Or(x => x.Community == "Navy");

var list = db.ListRecords.AsExpandable()
    .Where(classFilter)
    .Where(someOtherFilterLikeClassFilter)
    .Where(AnotherOneLikeClassFilter)
    .ToList();