Ordering with LINQ

In the old days (last year), if you were a front-end ASP.NET developer and you needed to present a drop-down list with sorted items, you would check the data that the person that wrote the business layer method and if it came to you unsorted, you would first curse that person, and then either mess with the code so that the data comes back sorted, sneak around to the database and add an “ORDER BY” clause to that query, or add sorting to your drop-down list.

Thanks to LINQ’s extended methods, now you just call the OrderBy method of the IEnumerable type that you get back and you are all set:

foreach (MyType _Item in GetItemsForDropDown().OrderBy(p => p.Name))
{
   ddlSortedList.Items.Add(new ListItem(_Item.Name, _Item.ID));
}

Where GetItemsForDropDown() would return an IEnumerable such as a List, ReadOnlyCollection, etc.

It’s jut a little thing, but it’s just amazing how something so simple can make you love the technology that much more!


Leave a Reply

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