У меня есть список с некоторыми идентификаторами вроде этого:
List<long> docIds = new List<long>() { 6, 1, 4, 7, 2 };
Morover, у меня есть еще один список элементов <T>, которые представлены идентификаторами, описанными выше.
List<T> docs = GetDocsFromDb(...)
Мне нужно сохранить один и тот же порядок в обеих коллекциях, так что элементы в List<T> должны находиться в том же положении, что и в первом (из-за ошибок в поисковых системах). И этот процесс не может быть выполнен в функции GetDocsFromDb().
При необходимости можно изменить второй список на некоторую другую структуру (например, Dictionary<long, T>), но я бы предпочел не изменять его.
Есть ли простой и эффективный способ сделать это "упорядочение в зависимости от некоторых идентификаторов" с LINQ?