使用 Linq C# 获取元组对象列表中的最新日期对象
Get the Latest date object in List of Tuples objects using Linq C#
我有一个示例代码和
我需要根据最新日期object/Record获取请帮帮我
示例代码示例:
List<Tuple<string, string, DateTime>> LtTable = new List<Tuple<string, string, DateTime>>();
LtTable.Add(new Tuple<string, string,DateTime>("test1", "test11", Convert.ToDateTime("1/1/2021"));
LtTable.Add(new Tuple<string, string,DateTime>("test2", "test22", Convert.ToDateTime("2/1/2021"));
LtTable.Add(new Tuple<string, string,DateTime>("test3", "test33", Convert.ToDateTime("3/2/2021"));
LtTable.Add(new Tuple<string, string,DateTime>("test4", "test44", Convert.ToDateTime("7/7/2021"));
尝试的代码:
Tuple<string,string,DateTime> tuple1 = LtTable.Select(c=>new Tuple<string,string,DateTime>(c.item1,c.item2,c.item3)).Where(r => r.Item3 != new DateTime())
.Max(r => r.Item3)
Desired Output: the Output i want as tuple Obj is the latest dated one which is "test4", "test44", 7/7/2021 12:00:00 AM
您可以先对列表进行排序,然后取第一个元素:
var tupleWithMaxDate = LtTable.OrderByDescending(x => x.Item3).FirstOrDefault();
请使用此代码
var result = LtTable.Where(r => r.Item3 != new DateTime()). OrderByDescending(d => d.Item3).FirstOrDefault();
我有一个示例代码和 我需要根据最新日期object/Record获取请帮帮我
示例代码示例:
List<Tuple<string, string, DateTime>> LtTable = new List<Tuple<string, string, DateTime>>();
LtTable.Add(new Tuple<string, string,DateTime>("test1", "test11", Convert.ToDateTime("1/1/2021"));
LtTable.Add(new Tuple<string, string,DateTime>("test2", "test22", Convert.ToDateTime("2/1/2021"));
LtTable.Add(new Tuple<string, string,DateTime>("test3", "test33", Convert.ToDateTime("3/2/2021"));
LtTable.Add(new Tuple<string, string,DateTime>("test4", "test44", Convert.ToDateTime("7/7/2021"));
尝试的代码:
Tuple<string,string,DateTime> tuple1 = LtTable.Select(c=>new Tuple<string,string,DateTime>(c.item1,c.item2,c.item3)).Where(r => r.Item3 != new DateTime())
.Max(r => r.Item3)
Desired Output: the Output i want as tuple Obj is the latest dated one which is "test4", "test44", 7/7/2021 12:00:00 AM
您可以先对列表进行排序,然后取第一个元素:
var tupleWithMaxDate = LtTable.OrderByDescending(x => x.Item3).FirstOrDefault();
请使用此代码
var result = LtTable.Where(r => r.Item3 != new DateTime()). OrderByDescending(d => d.Item3).FirstOrDefault();