Geeks With Blogs

News My Blog has been MOVED to https://mfreidge.wordpress.com
Michael Freidgeim's OLD Blog My Blog has been MOVED to https://mfreidge.wordpress.com
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
Posted on Saturday, May 25, 2013 10:20 AM .Net Framework , Helper Functions | Back to top


Comments on this post: AddIfNotNull collection extensions

# re: AddIfNotNull<T> collection extensions
Requesting Gravatar...
For the last one, it's recommended to you c.Any() instead of c.Count() == 0
Left by Ahmed Magdy on May 25, 2013 10:52 PM

# re: AddIfNotNull<T> collection extensions
Requesting Gravatar...
Thanks, Ahmed. ReSharper suggested the same. I've changed it.
Left by michael freidgeim on May 28, 2013 4:06 AM

# re: AddIfNotNull<T> collection extensions
Requesting Gravatar...
A great exchange of information.
192.168.1.254
Left by Godffspo on Sep 25, 2017 7:44 AM

Your comment:
 (will show your gravatar)


Copyright © Michael Freidgeim | Powered by: GeeksWithBlogs.net