引言LINQ(Language Integrated Query)是C语言中的一项强大功能,它允许开发者以声明性方式查询数据源。无论是查询内存中的集合,还是从数据库中检索数据,LINQ都能提供简洁、高...
LINQ(Language Integrated Query)是C#语言中的一项强大功能,它允许开发者以声明性方式查询数据源。无论是查询内存中的集合,还是从数据库中检索数据,LINQ都能提供简洁、高效的解决方案。本文将深入探讨C# LINQ查询的基础知识,并提供一些实用的技巧,帮助您轻松玩转数据操作。
LINQ是一种统一的数据查询接口,它支持多种数据源,包括集合、数据库、XML和LINQ to Objects。通过使用LINQ,您可以编写更加简洁、易于维护的代码。
using System;
using System.Linq;
public class Program
{ public static void Main() { var numbers = new List { 1, 2, 3, 4, 5 }; var evenNumbers = numbers.Where(n => n % 2 == 0); foreach (var number in evenNumbers) { Console.WriteLine(number); } }
} 在上面的代码中,我们使用Where方法查询了偶数。
using System;
using System.Linq;
public class Person
{ public string Name { get; set; } public int Age { get; set; }
}
public class Program
{ public static void Main() { var people = new List { new Person { Name = "Alice", Age = 25 }, new Person { Name = "Bob", Age = 30 }, new Person { Name = "Charlie", Age = 35 } }; var peopleOver30 = from person in people where person.Age > 30 select person; foreach (var person in peopleOver30) { Console.WriteLine($"{person.Name} is {person.Age} years old."); } }
} 这里我们使用LINQ查询年龄大于30岁的人。
using System;
using System.Linq;
public class Program
{ public static void Main() { var numbers = new List { 1, 2, 3, 4, 5 }; var flattenedNumbers = numbers.Concat(new List { 6, 7, 8, 9, 10 }); foreach (var number in flattenedNumbers) { Console.WriteLine(number); } }
} 使用Concat方法将两个集合合并。
using System;
using System.Linq;
public class Program
{ public static void Main() { var numbers = new List { 1, 2, 3, 4, 5 }; var distinctNumbers = numbers.Distinct(); foreach (var number in distinctNumbers) { Console.WriteLine(number); } }
} 使用Distinct方法去除重复元素。
通过本文的学习,您应该已经对C# LINQ查询有了基本的了解。掌握LINQ可以帮助您更高效地处理数据,提高代码的可读性和可维护性。继续学习和实践,您将能够运用LINQ解决更多复杂的数据操作问题。