c# - 如何在 C# 中对类的 <list> 进行排序?

标签 c# asp.net list

我有这样一个类的列表:

 public class CityCodeInfo
 {
    public string CityName;
    public string Province;
    public string Code; 
  }

  List<CityCodeInfo> lstCityt = new List<CityCodeInfo>();

我如何根据它的任何变量(城市名称、省份和代码)对这个列表进行排序

我试过这段代码:

  lstCityt.Sort((x, y) => string.Compare(x.CityName, y.CityName));

但它不起作用...

有什么想法吗?!

最佳答案

您可以为此使用 LINQ。

升序

var result = lstCityt.OrderBy(C=> C.CityName).ThenBy(C=> C.Province).ThenBy(C=> C.Code);

降序

var result = lstCityt.OrderByDescending(C=> C.CityName).ThenByDescending(C=> C.Province).ThenByDescending(C=> C.Code);

两者

var result = lstCityt.OrderBy(C=> C.CityName).ThenByDescending(C=> C.Province).ThenByDescending(C=> C.Code);

关于c# - 如何在 C# 中对类的 <list> 进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11912822/

相关文章:

c# - 如何使用 HtmlAgilityPack 清理 html?

c# - 如何将两个数据表连接到另一个数据表

asp.net - Wordpress 喜欢 asp.net 页面中的短代码吗?

C# 使用对象的属性而不是 List.Contains() 的引用

python - 如果值相同,则反向返回相同的索引

c# - 保存大部分空白图像 - 文件大小高,想要小一点

c# - 获取多个 FileInfo 的更快方法?

javascript - 在 javascript 中使用文本框文本

c# - 在 ASP.NET 中使用 Response.Write 函数中的警报

c# - 在 C# 中,将值感染\传输到列表的相邻项