LINQ编程
核心概念
LINQ(Language Integrated Query,语言集成查询) 是 Microsoft 提供的一种强大的查询技术,允许开发者以统一的方式对不同数据源进行查询操作。它将查询功能直接集成到编程语言中,使得代码更加简洁、易读且类型安全。
一般来说,使用LINQ与ORM框架配合使用,生成查询语句与数据库进行交互。
三种实现方式
1. 标准查询运算符:提供了诸如 Where、Select、OrderBy、GroupBy 等常用查询操作。
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 }; var result = numbers.Where(x => x % 2 == 0).Select(x => x * 2); Console.WriteLine(string.Join(", ", result)); // 输出: 4, 8
2. lambda表达式:使用 lambda 表达式来定义条件或逻辑,例如:x => x.Age > 18 表示筛选年龄大于 18 的对象。
3. 查询表达式:一种更接近 SQL 的语法糖,用于编写 LINQ 查询,编译器会将其转换为标准查询运算符的调用。
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 }; var result = from num in numbers where num % 2 == 0 select num * 2; Console.WriteLine(string.Join(", ", result)); // 输出: 4, 8
LINQ的常见操作
1. Where 筛选满足条件的数据
var filtered = numbers.Where(x => x > 3);
2. Select 对数据进行转换
var squares = numbers.Select(x => x * x);
3. OrderBy 排序
var sorted = numbers.OrderBy(x => x);
4. 使用Sum、Count、Max、Min进行求和、统计、最大值、最小值
两种执行方式
1. 延迟执行
var query = numbers.Where(x => x > 3); // 不会立即执行 foreach (var item in query) { } // 此时才会执行查询
2. 立即执行,常用方法:ToList()、ToArray()
var result = numbers.Where(x => x > 3).ToList(); // 立即执行
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南