/// <summary> /// 过滤 /// </summary> /// <typeparam name="T">实体类型</typeparam> /// <param name="source">数据源</param> /// <param name="criteria">查询条件</param> public static IQueryable <T> Filter <T>(this IQueryable <T> source, ICriteria criteria) where T : class, IAggregateRoot { if (criteria == null) { return(source); } var predicate = criteria.GetPredicate(); if (predicate.IsEmpty()) { return(source); } return(source.Where(predicate, criteria.GetValues())); }