下面是一个示例代码,演示了如何使用LINQ查询按照最旧和最小ID来选择数据:
using System;
using System.Collections.Generic;
using System.Linq;
public class Person
{
public int ID { get; set; }
public string Name { get; set; }
public DateTime Birthday { get; set; }
}
public class Program
{
public static void Main(string[] args)
{
List people = new List
{
new Person { ID = 1, Name = "Alice", Birthday = new DateTime(1990, 5, 1) },
new Person { ID = 2, Name = "Bob", Birthday = new DateTime(1995, 2, 15) },
new Person { ID = 3, Name = "Charlie", Birthday = new DateTime(1985, 10, 10) },
new Person { ID = 4, Name = "David", Birthday = new DateTime(1992, 8, 20) }
};
// 按照最旧和最小ID来选择
var result = people.OrderBy(p => p.Birthday).ThenBy(p => p.ID).FirstOrDefault();
// 打印结果
Console.WriteLine($"ID: {result.ID}, Name: {result.Name}, Birthday: {result.Birthday}");
// 等待用户输入,防止控制台窗口立即关闭
Console.ReadLine();
}
}
以上代码将输出最旧和最小ID的人的信息:
ID: 3, Name: Charlie, Birthday: 10/10/1985 12:00:00 AM
在这个示例中,我们首先创建了一个Person
类,包含了ID、姓名和出生日期属性。然后我们创建了一个List
对象,包含了一些人的信息。
接下来使用LINQ查询,通过OrderBy
方法按照出生日期排序,然后使用ThenBy
方法按照ID排序。最后使用FirstOrDefault
方法获取最旧和最小ID的人的信息。最后输出结果到控制台。