C# Linq 使用参考列表对列表进行排序

我有两个列表,我需要用另一个列表对一个列表进行排序。


var orderList = new List<long>() {4, 55, 34};

var itemList = new List<Branch>() { {Id=55, Name="X"},  {Id=34, Name="Y"}, {Id=4, Name="Z"} }; 

我如何才能itemList根据第一个列表订购第二个列表orderList?


有什么 linq 捷径吗?


更新:


orderList将始终包含所有预期的Id分支itemList。


德玛西亚99
浏览 221回答 3
3回答

喵喔喔

您可以LINQ按项目在其他数组中的索引使用和排序项目:var&nbsp;orderedItemList&nbsp;=&nbsp;itemList.OrderBy(x&nbsp;=>&nbsp;orderList.IndexOf(x.Id)).ToList();

www说

您可以通过的索引顺序Id的orderList:var&nbsp;result&nbsp;=&nbsp;itemList.OrderBy(e&nbsp;=>&nbsp;orderList.IndexOf(e.Id)).ToList();
打开App,查看更多内容
随时随地看视频慕课网APP