首页 > 解决方案 > C#从对象列表中的字段中获取最大数字

问题描述

我有一个具有这种结构的列表:

public class Amendment{
    public string name
    public string groupnumber
    public string edition
    public string destination
}

数据如下

var amendmentOne = new Amendment{
    name = "Apple",
    groupnumber = "A12345",
    edition = "A55600E01"
    phonenumber = "2232132123"
}
var amendmentTwo = new Amendment{
    name = "Apple",
    groupnumber = "AG2222",
    edition = "A55600E02"
    phonenumber = "2232132123"
}
var amendmentThree = new Amendment{
    name = "Apple",
    groupnumber = "AG55555",
    edition = "A55600E03"
    phonenumber = "2232132123"
}

当我循环浏览列表时,是否有可能以某种方式从列表中获取版本号为 A55600E03 的列表项?除了最后几个字符之外,版本号都是相同的,因为它们始终是 E[number]

标签: c#

解决方案


应该像

var result = List.Orderby(x => edition).Last();

例子

var list = new List<Amendment>{amendmentThree, amendmentOne, amendmentTwo};
var result = list.OrderBy(x => x.edition).Last();
Console.WriteLine(result.edition);

输出

A55600E03

完整的演示在这里


推荐阅读