37 lines
717 B
C#
37 lines
717 B
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
public static class IListExtensions
|
|
{
|
|
public static bool NullOrEmpty<T>(this IList<T> list)
|
|
{
|
|
return list == null || list.Any() == false;
|
|
}
|
|
|
|
public static bool NotNullOrEmpty<T>(this IList<T> list)
|
|
{
|
|
return NullOrEmpty<T>(list) == false;
|
|
}
|
|
|
|
public static void AddDistinct<T>(this IList<T> list, T item)
|
|
{
|
|
if (item == null || list.Contains(item))
|
|
{ return; }
|
|
|
|
list.Add(item);
|
|
}
|
|
|
|
public static void AddRangeDistinct<T>(this IList<T> list, IEnumerable<T> collection)
|
|
{
|
|
if (collection == null)
|
|
{ return; }
|
|
|
|
foreach(T item in collection)
|
|
{ AddDistinct(list, item); }
|
|
}
|
|
}
|
|
|