222 votes

Trier une liste à partir des ID d'une autre liste

J'ai une liste avec des identifiants comme ceci :

List<long> docIds = new List<long>() { 6, 1, 4, 7, 2 };

Morover, j'ai une autre liste de <T> qui sont représentés par les identifiants décrits ci-dessus.

List<T> docs = GetDocsFromDb(...)

J'ai besoin de conserver le même ordre dans les deux collections, de sorte que les éléments de la section List<T> doit être dans la même position que dans la première (pour des raisons d'évaluation par les moteurs de recherche). Et ce processus ne peut pas être effectué dans le GetDocsFromDb() fonction.

Si nécessaire, il est possible de changer la deuxième liste en une autre structure ( Dictionary<long, T> par exemple), mais je préfère ne pas le modifier.

Existe-t-il un moyen simple et efficace de réaliser cette "ordination en fonction de certains ID" avec LINQ ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X