Understanding .Single()

Total Post:135

Points:947
C# 
C#
 1151  View(s)
Ratings:
Rate this:

Browsing sample code I'm seeing a usage I don't understand:

var orderRow = order.Rows.Single();

Rows is an enumerable and usually one would iterate using a foreach loop. Is the .Single a workaround for cases where, for whatever reason, the foreach can't be (or need not) be used?

var option = options.OfType<AdditionalLocationsOption>().SingleOrDefault();

if (option != null){

...stuff

}

  1. Post:378

    Points:2694
    Re: Understanding .Single()

    Hi Chintoo, 


    LINQ's Single method returns the single element in a collection.

    This would be written in Rows is known to contain exactly one row.

    If it's empty, or if it has more than one row, an exception will be thrown.

Answer