Dynamisches Cross-Joining mehrerer Sammlungen unterschiedlicher Größe in Linq (C #)

Ich habe eine unbekannte Anzahl von Buckets (Sammlungen) und jeder Bucket hat eine unbekannte Anzahl von Entitäten

Ich muss ein kartesisches Produkt aller Entitäten erstellen, damit ich eine einzige COLLECTION erhalte, die ARRAYS von Entitäten enthält, und in jedem Array gibt es 1 Repräsentanten aus JEDEM Bucket.

Wenn ich also 5 Eimer (B1..B5) und die Eimer B1, B2 jeweils 1 Element und die Eimer B3, B4 und B5 jeweils 4, 8 und 10 Elemente habe, habe ich eine Sammlung von 320 Arrays und jedes Array enthält 5 Elemente.

Das einzige blöde Problem hierbei ist, dass sowohl die Größe der Eimer als auch die Anzahl der Eimer zur Entwicklungszeit unbekannt sind.

Performance ist hier nicht besonders wichtig, da meine Eimer die meiste Zeit nur eine Entität haben und es nur selten Zeiten gibt, in denen einige meiner Eimer 20 bis 30 Elemente enthalten ... und ich normalerweise 5 habe -30 Eimer

Ich würde gerne irgendwo Linq verwenden, aber mein Gehirn brodelt, als ich mir vorstelle, wie das funktionieren würde

Antworten auf die Frage(8)

Ihre Antwort auf die Frage