请教 这里 LINQ想 找到 最后的 4条 记录
然后放在 这里
这个 List Linq查找怎么写呀?
解答:写了一个小例子作为解答。
namespace C_Sharp
{
class Program
{
static void Main(string[] args)
{
//声明
List<Person> listPerson = new List<Person>() {
new Person {Type="A", FirstName="张",LastName="三",Age=},
new Person {Type="A", FirstName="李",LastName="三",Age=},
new Person { Type="A", FirstName="王",LastName="三",Age=},
new Person { Type="A", FirstName="赵",LastName="三",Age=},
new Person { Type="A", FirstName="徐",LastName="三",Age=},
new Person { Type="A", FirstName="曹",LastName="三",Age=},
}; var listResult = listPerson.Where(a => a.Type == "A") //where过滤
.OrderBy(a => a.Age) //排序(降序)
.Take() //选取降序的前4个,就是升序后的后4个
.ToList(); //IEnumerable<Person>转换成List<Person>,加ToList<TResult>()非延迟查询 foreach (var person in listResult)
{
Console.WriteLine("姓名:{0},年龄:{1}", person.FirstName + person.LastName, person.Age);
}
Console.ReadKey();
}
}
class Person
{
public string Type { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public Int32 Age { get; set; }
}
}
输出:
我想当然的,以为会报错,试过之后,的确没报错。当listPerson的数据只有三个时,仍然使用此查询,没有报错。