list泛型排序的方法

如果这样定义 list<string> list = newlist<string>();

那么只需要用list.sort()即可。就会按照英文单词进行排序。

 

但是如果这个string是如下类呢?

public class DTO

{

    public int ID;

    public string Name;

}

这样定义 list<DTO> list = newlist<DTO>();

想按照Name值排序,那该如何处理,读到这里,也许你已经想到,多个字段,list怎么排序啊,用sort显然不行,那么就需要换一种方式思考了。今天研究了一下,有一个最简单的办法,那就是用linq查询。

  var x = (from m in List orderby m.Nameascendingselect m).ToList<DTO>();

简单解释下:

list你要排序的list
orderby就是需要排序的字段

descending反序排列;ascending正序排列

x为排完序的list

还可以用Lamda表达式
list.OrderBy(c=>c.Id)
也可以

你可能感兴趣的:(c,list,String,Class,LINQ)