在c#中List<>的orderby方法如何使用?如何对一个类别的数据按照其某个属性降序排列?

如题所述

根据键按升序对序列的元素排序。
class Pet
{
public string Name { get; set; }
public int Age { get; set; }
}

public static void OrderByEx1()
{
Pet[] pets = { new Pet { Name="Barley", Age=8 },
new Pet { Name="Boots", Age=4 },
new Pet { Name="Whiskers", Age=1 } };

IEnumerable<Pet> query = pets.OrderBy(pet => pet.Age);

foreach (Pet pet in query)
{
Console.WriteLine("{0} - {1}", pet.Name, pet.Age);
}
}追问

这个没用到List呢?

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-11-24
List<T>和T[],在使用LINQ排序时都是使用相同的方式
list.OrderBy(i=>i.Property)即可追问

哦,那如果要实现升序排列,又怎样实现呢?

追答

OrderBy()是升序,从小到大
OrderByDescending()是降序,从大到小

本回答被提问者采纳
第2个回答  2018-03-30

其实就我想实现一个功能,这个功能就是 我设计一个comboBox。

功能:

1、 我想把里面的选项当我选择后按回车就到了下面的listBox里面,而且comboBox里面删除该选项。

2、最后当我在listBox删除一个选项,那个这个选项就回到当初comboBox的原定位置。

这是我的想法:

我用一个bindingsource(下面简称bs)绑定一个comboBox的数据源,然后comboBox.dataSource=bs,然后再让bs.dataSource=list;

本回答被网友采纳
第3个回答  2011-09-21
List<>有orderby方法吗?用sort排序。

在c#中List<>的orderby方法如何使用?如何对一个类别的数据按照其某个...
根据键按升序对序列的元素排序。class Pet { public string Name { get; set; } public int Age { get; set; } } public static void OrderByEx1(){ Pet[] pets = { new Pet { Name="Barley", Age=8 },new Pet { Name="Boots", Age=4 },new Pet { Name="Whiskers", Age=1 ...

C#中怎么多datatable中某列中升序排列的数据按照指定的差值分组?
在 C# 中,你可以使用 LINQ 查询来实现这一目的。首先,你需要使用 OrderBy 方法将数据表中的数据按照指定的列升序排列。然后,你可以使用 GroupBy 方法将数据分组,按照指定的差值分组。例如,假设你有一个名为 dataTable 的数据表,其中包含一列名为 value 的数值数据,你想将这些数据按照每 5 个为...

C# list<>根据对象的某个属性排序
例如:假定我们要把一个row列的id按照降序排列(升序以此类推).1. 先写好排序接口规则:public class ListComparerByIdDesc : IComparer<DataRow> { #region IComparer< DataRow > Members public int Compare(DataRow x, DataRow y) { return y[0].ToString().CompareTo(x[0]....

C#list<>根据对象的某个属性排序
2. 然后,使用这个比较器来对`List`进行排序。例如:```csharp List list = new List(); \/\/ 假设这是您的数据列表 list.Sort(new ListComparerByIdDesc()); \/\/ 使用比较器进行降序排序 ```3. 在`Compare`方法中,`a.CompareTo(b)`的返回值是根据比较逻辑来确定的:- 如果`a`小于`b`,...

c# list集合中有一个模型,然后怎么根据里面某一个字段排序
你好,最简单的方法:命名空间引用using System.Linq;假设你的这个IList的对象名为listTemp;var listResult = listTemp.OrderbyDescending ( x => x.age ).ToList();

c# 在遍历list时如何按照list里的 某个字段排序?
首先要知道往List里面添加数据的对象类型,假设为Project类型这样写Project myproject = 你要判断的数据;bool listHasMyproject = false;foreach(var item in list.Items){Project proj = (Project)item;if(proj.equals(myProject))\/\/判断是不是等于你的数据,需要重写equals方法,当然你也可以跟据名字...

c# 如何获取列表中某个属性最大或最小的元素?
C# 中有多种方法来获取列表中某个属性最大或最小的元素,其中一种是使用 Linq 中的 OrderBy 和 First 或 OrderByDescending 和 First 。举个例子,获取列表中 x 最小的 Actor:List<Actor> actors = new List<Actor>();\/\/ Add actors to the listActor minActor = actors.OrderBy(a => a...

C# List Sort 排序用法总结
在C#语言中,使用List进行排序时,可以轻松实现升序、降序排序。默认情况下,Sort方法中的比较函数CompareTo会以升序方式进行排序,其结果为1表示大,-1表示小,0表示相等。例如,如果想要按照升序排列,可以使用 x > y return 1;如果需要降序排列,只需将返回结果改为 return -1。对于非数值类型、...

C#中怎么实现一个按钮的升序降序排列
你可以设置一个变量 例如 int i=1;点一下就 i++ 在使用降序的方法前面判断 if(t%2==0){就降序}else{就升序} 这样你可懂?

c#中如何用list对文本文件中的词语按行去重并统计每个词语的次数
1)代码如下:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;namespace ConsoleApplication1{ class Program { static void Main(string[] args) { \/\/从文本文件中读出所有行 string[] lines = File.ReadAllLines("文本1.txt...

相似回答