Linq-Abfrage, um die eindeutigen Werte in einer Liste abzurufen

Angenommen, dies ist meine Mitgliederklasse

class Member 
{
    public string CategoryId { get; set; }
    public string MemberName { get; set; }
    public int Distance { get; set; }
}

Und das ist Liste.

var list = new List<Member>();
list.Add(new { CategoryId = "01", MemberName="andy" Distance=3});
list.Add(new { CategoryId = "02", MemberName="john" Distance=5});
list.Add(new { CategoryId = "01", MemberName="mathew" Distance=7});
list.Add(new { CategoryId = "03", MemberName="bakara" Distance=2});

Kann jemand bitte die logische / linq-Abfrage vorschlagen, um die Liste mit eindeutiger / eindeutiger categoryID mit kürzester Entfernung zu erhalten.

Dasoutput sollte sein :

list.Add(new { CategoryId = "01", MemberName="andy" Distance=3});
list.Add(new { CategoryId = "02", MemberName="john" Distance=5});
list.Add(new { CategoryId = "03", MemberName="bakara" Distance=2});

Antworten auf die Frage(7)

Ihre Antwort auf die Frage