如何排序List <tuple <class1,class2>?</tuple <class1,class2>

时间:2013-05-25 06:34:44

标签: c#

基本上我想将包含不同类的元组列表添加到List中,然后根据class2对对象进行排序。

var myList = new List<Tuple<class1, class2>>();
 myList.Add(new Tuple<class1, class2>(class1obj,class2obj));

如何根据类2中的属性对myList值进行排序?

3 个答案:

答案 0 :(得分:3)

如果您有现有列表并想要对其进行排序,请调用指定要使用的Sort()Comparison方法。然后以适当的方式比较第二项。

例如,

var items = new List<Tuple<int, string>>
{
    Tuple.Create(1, "foo"),
    Tuple.Create(15, "bar"),
};
items.Sort((a, b) => a.Item2.CompareTo(b.Item2));

答案 1 :(得分:2)

myList = myList.OrderBy(n => n.Item2.YourProperty).ToList();

会给你你的结果。

(需要using System.Linq;

答案 2 :(得分:0)

试试这个:

var sortedList = myList.OrderBy(x => x.Item2.Property).ToList();

Property是您要排序的属性。