【发布时间】:2017-06-07 11:18:38
【问题描述】:
我有一个 IList:
IList[] info = new IList[2];
info[0] = Date; //List<DateTime> item
info[1] = something; //List<double> item
所以,我想按info[0] 中的日期对info 进行排序。像这样:
Date.Sort((a, b) => a.CompareTo(b));
但是当我尝试这样做时:
IEnumerable[] sortedEnum = info.OrderBy(info[0].Sort((a, b) => a.CompareTo(b)));
我明白了:
“System.Collections.IList”不包含“Sort”的定义,并且找不到接受“System.Collections.IList”类型的第一个参数的扩展方法“Sort”(您是否缺少 using 指令或程序集参考?)。
有人可以帮我解决这个问题吗?
【问题讨论】:
-
你为什么使用obsolete
IList和IEnumerable?将它们更改为IList<Object>和IEnumeratble<Object> -
所以...您有一个列表数组 - 您是否要对数组进行排序?还是您实际上是在尝试对这两个列表进行排序,使两者保持同步?
-
这甚至没有意义。您将如何按该列表中的一项对项目列表进行排序?此外,LINQ 不适用于非泛型
ILists。如果你有IList<T>,那么它只是info.OrderBy(x => x.DateProperty)
标签: c# winforms list linq sorting