LINQ frage: Nur ein Object zurückgeben?
-
Hallo,
ich habe eine Collection welche elemente enthält. Nun will ich via Linq nur ein Element zurück geben. In diesem Beispiel liefert mir die Linq anweisung eine Collection von c zurück, ich will aber nur ein element als ergebnis haben, das (wie bspw. im Folgenden Code beschrieebn "Bosten" nur einmal vorkommt. Wie gehts ??
var result = from c in Customers where c.City == "Boston"
-
Versuch mal FirstOrDefault (eine Extension-Method für IEnumerables):
Customers.FirstOrDefault(c => c.City.Equals("Boston"))
-
Alternativ geht auch
SingleOrDefault
, dann wird eineInvalidOperationException
geworfen wenn das Ergebnis mehr als einen Eintrag enthält.