Why do I love Extension Methods in System.Linq ?

Because it helps me to write compact and clean code of course !

For example, I need to expose a property that gives the number of visible items in my ViewModel.

Old way:

        public int VisibleItemsCount
        {
            get
            {
                int i = 0;
                foreach (var item in this.Items)
                {
                    if (item.IsVisible)
                        i++;
                }
                return i;
            }
        }

Linq way:

public int VisibleItemsCount
{
    get
    {
        return this.Items.Count(item => item.IsVisible);
    }
}

Which one do you prefer ?

2 thoughts on “Why do I love Extension Methods in System.Linq ?

  1. Si je puis me permettre, le titre du post aurait du être:

    “Why I love Extension Methods ?” 😉

    La méthode Count est une méthode d’extension: rien à voir avec LINQ 🙂

    A+

  2. J’ai mis à jour le titre 🙂

    Effectivement, rien à avoir avec Linq en lui-même, mais la méthode se trouvant dans System.Linq, j’ai pris un raccourci !

Leave a Reply

Your email address will not be published. Required fields are marked *