/// <summary> /// 检查集合至少包含多少个元素 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="argument"></param> /// <param name="argumentName"></param> /// <param name="number"></param> /// <param name="message"></param> public static void IsAtLeast <T>(ICollection <T> argument, string argumentName, int number, string message = null) { AssertionJudgment.Require2Validation <ArgumentOutOfRangeException>( CollectionJudgment.ContainsAtLeast(argument, number), argumentName, argument.Count, message ?? $"{nameof(argument)} should has {number} items at least."); }
/// <summary> /// 检查两个集合是否拥有相等数量的成员 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="this"></param> /// <param name="that"></param> /// <returns></returns> public static bool ContainsEqualCount <T>(this ICollection <T> @this, ICollection <T> @that) => CollectionJudgment.ContainsEqualCount(@this, @that);
/// <summary> /// 检查集合是否为空 /// </summary> /// <param name="argument"></param> /// <param name="argumentName"></param> /// <param name="message"></param> public static void IsNotEmpty(IEnumerable argument, string argumentName, string message = null) { AssertionJudgment.Require2Validation <ArgumentNullException>( !CollectionJudgment.IsNullOrEmpty(argument), argumentName, message ?? $"{nameof(argument)} can not be null or empty."); }
/// <summary> /// 检查一个集合是否拥有指定数量的成员 /// </summary> /// <typeparam name="T">动态类型</typeparam> /// <param name="enumeration"></param> /// <param name="count"></param> /// <returns></returns> public static bool ContainsAtLeast <T>(this ICollection <T> enumeration, int count) => CollectionJudgment.ContainsAtLeast(enumeration, count);
/// <summary> /// 判断集合是否为空 /// </summary> /// <typeparam name="T">动态类型</typeparam> /// <param name="source">要处理的集合</param> /// <returns>为空返回 True,不为空返回 False</returns> public static bool IsNullOrEmpty <T>(this IEnumerable <T> source) => CollectionJudgment.IsNullOrEmpty(source);
/// <summary> /// 判断集合是否为空 /// </summary> /// <param name="source"></param> /// <returns></returns> public static bool IsNull(this IEnumerable source) => CollectionJudgment.IsNull(source);
/// <summary> /// 安全获得 IQueryable 集合 /// </summary> /// <param name="query"></param> /// <returns></returns> public static IQueryable SafeQueryable(this IQueryable query) => CollectionJudgment.IsNullOrEmpty(query) ? (new List <object>()).AsQueryable() : query;
/// <summary> /// 安全获得 IQueryable 集合 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="query"></param> /// <returns></returns> public static IQueryable <T> SafeQueryable <T>(this IQueryable <T> @query) => CollectionJudgment.IsNullOrEmpty(query) ? (new List <T>()).AsQueryable() : query;