get distinct item in List with highest value in property
===

I have an object AppDetail containing 2 string properties, a name, and a version string (e.g. "1.0.0")

Given a List< AppDetail > that contains duplicates of the same name but different version strings, how do I create a List with unique names, and highest versions? 

e.g. from these 2 items in the initial list

    "name1", "1.0.1"
    "name2", "1.1.0"

I want the unique items list to contain only the name2 item, since it has the highest version.

To compare versions I need to create an IComparer that creates Version objects and then to use the version.CompareTo(version) method. But thats not useful, since the [List.Distinct overload][1] only accepts IEqualityComparer, not IComparer. 

Any thoughts? Thanks


  [1]: http://msdn.microsoft.com/en-us/library/bb338049