Liste nach Gruppenzahl sortieren

Ich möchte eine sortierenList auf elementzählt vonIGroupings.

Und das war es auch schon, die Liste sollte idealerweise gleich sein. Ich würde mit einer neuen Liste Kompromisse eingehen, aber dann sollten die Elemente dieselben ursprünglichen Objekte sein, keine Kopien (jedoch flache) und definitiv keine anonymen Objekte.

Speziell: Wir haben eine Entität mit vielen Eigenschaften und eine Liste von Objekten dieses Typs. Wir würden gerne(1) gruppieren Sie die Objekte dann nach bestimmten Eigenschaften (Name, Adresse, ...)(2) Zählen Sie die Anzahl der Elemente in jeder Gruppe. Endlich möchten wir(3) Ordnen Sie die Liste basierend auf diesen Zählern neu an, indem Sie die Elemente, die Teil der größeren Gruppen sind, zuerst platzieren.

Hinweis: Unser Hauptproblem ist, dass wir anscheinend keinen Weg finden können, einen Verweis auf die ursprünglichen Objekte in den Elementen der Gruppen beizubehalten. Tatsächlich können wir in der Linq-Abfrage nur den Gruppierungsschlüssel (oder die Eigenschaften des Schlüssels) auswählen und nichts anderes wird von angezeigtIGrouping. Wir können auch nicht herausfinden, wie ein Gruppenelement mit einem Element der Liste verknüpft werden kann, ohne die Daten zu betrachten (und selbst dann benötigen wir den Primärschlüssel, den wir dem Gruppierungsschlüssel nicht hinzufügen können, oder es würde den Zweck der Gruppierung zunächst zunichte machen).

Antworten auf die Frage(3)

Ihre Antwort auf die Frage