【发布时间】:2012-06-01 23:58:36
【问题描述】:
以下字典表示目标城市 ID 的键/值对以及与该城市关联的过滤器数量:
Dictionary<int, int> totalCityFilters
这本字典按过滤器数量降序排列,这正是我需要的方式。然后我有一个未排序的航班列表:
List<Flight> unsortedFlights
每个Flight 对象都有一堆属性,其中与我的问题最相关的是DestinationID 和FinalPrice。我需要创建一个新的航班列表,根据以下两个前提对其进行排序:
- 列表应首先根据
totalCityFilters的顺序排序,该字典上的键与属性DestinationID匹配。航班列表可能有多个航班具有相同的DestinationID(这不是主键)。 - 然后应按
FinalPrice属性对列表进行排序(升序)。
但是,第二类不能破坏第一个。我的意思是,如果B.DestinationID 首先出现,则更便宜的航班 (A) 不能位于更昂贵的航班 (B) 之上比A.DestinationID 上的totalCityFilters。
【问题讨论】:
标签: c# linq list sorting dictionary