I want to post a few recently created collection extensions to write in one line, what otherwise takes 2 or more
public static void AddIfNotNull( this IList coll, T newItem) where T : class
{
if (newItem != null)
{
coll.Add(newItem);
}
}
public static void AddRangeIfNotNullOrEmpty( this List coll, IEnumerable newItems) where T : class
{
if (!newItems.IsNullOrEmptySequence())
{
coll.AddRange(newItems);
}
}
public static void AddIfNotContains( this Dictionary dictionary, TKey key, TValue value)
{
if (!dictionary.ContainsKey(key))
{
dictionary.Add(key, value);
}
}
The methods use
public static bool IsNullOrEmptySequence(this IEnumerable c)
{
return (c == null || !c.Any() );
}
I've also found a few extensions, that could be useful in https://pikacode.com/Barankin/Fabrika-dveri/file/default/CRM/Common/Extensions/LinqExtensions.cs
