Comment puis-je formuler une requête LINQ simple (à l'aide de la syntaxe de requête) qui effectue ce groupe? p>
4 Réponses :
Vous pouvez les grouper par (index / chunksize). Exemple:
C'est l'un de ces rares cas où une plaine de boucle et un dictionnaire est plus courte et plus compréhensible que Linq ...
Belle solution! Très utile!
Pour ceux qui préfèrent les méthodes Linq (avec des expressions Lambda), voici Réponse de Dimitriy Maveev converti: Si vous n'avez besoin que d'un tableau de valeur code>, au lieu d'un
igrrouping
Pour faire le regroupement réel, ne devrait-il pas être:
var result = array .Select((value, index) => new { Value = value, Index = index}) .GroupBy(i => i.Index / chunk, v => v.Value);
Steven - tu es correct. J'ai mis à jour ma réponse. Merci d'avoir attrapé ça. Aussi, veuillez noter que Stackoverflow (Stackexchange dans son ensemble aussi) n'est pas un style de forum, où vous répondez à la réponse "ci-dessus". Vous avez posé pour répondre à la question. Je me rends compte que vous n'avez probablement pas eu assez de représentant pour ajouter un commentaire. Donc, de toute façon, essayez simplement d'aider.
Dupliqué possible de Split List en sublistes avec Linq