public Expression <Func <InfoLog, bool> > CreatCondition(LogQuery logQuery) { var condition = LinqExtension.True <InfoLog>(); if (!string.IsNullOrEmpty(logQuery.Content)) { condition.And(a => a.Content.Contains(logQuery.Content)); } if (logQuery.CreatTimeFrom.HasValue) { condition.And(a => a.CreationTime >= logQuery.CreatTimeFrom); } if (logQuery.CreatTmeTo.HasValue) { condition.And(a => a.CreationTime >= logQuery.CreatTmeTo); } if (!string.IsNullOrEmpty(logQuery.PlatformId)) { condition.And(a => a.PlatformId == new ObjectId(logQuery.PlatformId)); } if (!string.IsNullOrEmpty(logQuery.BusinessPosition)) { condition.And(a => $".{a.BusinessPosition}.".Contains($".{logQuery.BusinessPosition}.")); } if (!string.IsNullOrEmpty(logQuery.TraceInfo)) { condition.And(a => a.TraceInfo.Contains(logQuery.TraceInfo)); } return(condition); }
private Expression <Func <Entity.Platform, bool> > CreatCondition(PlatformQuery query) { var condition = LinqExtension.True <Entity.Platform>(); if (!string.IsNullOrEmpty(query.AppId)) { condition.And(a => a.Config.AppId == query.AppId); } if (!string.IsNullOrEmpty(query.Name)) { condition.And(a => a.Name.Contains(query.Name)); } return(condition); }