【发布时间】:2015-01-14 22:13:58
【问题描述】:
我想对一个对象列表进行排序,结构是Dictionary<Object, List<int>>
字典中的项目将是
item_1, (2,2,3)
item_2, (1,3,4)
item_3, (2,3,4)
item_4, (1,2)
一旦项目被排序,它们应该显示为
item_4, 1,2
item_2, 1,3,4
item_1, 2,2,3
item_3, 2,3,4
所以,基本上我必须对列表中的第一项进行排序,然后是第二项,然后是第三项,使用 linq 实现这种解决方案的简单方法是什么
【问题讨论】:
-
您的字典中
value中的项目是否需要订购,或者您必须在订购钥匙的同时订购它们?此外,您是希望字典不断订购还是在需要不时打印出来时按需订购。如果你想不断地排序,你的字典会更慢,你需要使用OrderedDictionary -
值中的项目首先需要订购,需要按需订购
-
项目的排序是否应该影响存储的
List<int>?另外,如果我有item_5, (1,2,3)哪个项目先出现,Item_4 还是 Item_5?最后,你能保证List<int>中的项目是预先排序的吗?如果可以的话,它会使问题变得容易得多。 -
List
只是为了方便——本质上,视图模型被传递给视图,并且在控制器中进行排序
标签: c# sorting dictionary