true
如果提供了查询参数,有没有办法忽略初始表达式
var query = ctx.Articles
.AsNoTracking()
.WithSmallIncludes();
Expression<Func<DbContext.Article, bool>> searchCondition = m => true;
if (!string.IsNullOrWhiteSpace(request.Title))
searchCondition = searchCondition.Or(m => m.Title.Contains(request.Title));
if (!string.IsNullOrWhiteSpace(request.Summary))
searchCondition = searchCondition.Or(m => m.Summary.Contains(request.Summary));
query = query.AsExpandable().Where(searchCondition);
现在它总是返回一切,因为表达式等于 true OR something OR Something。
如果我将初始表达式更改为 false,那么它将永远不会返回任何数据。