1.起源概念
LINQ(集成查询语言):LINQ 的全称是 Language Integrated Query,即“语言集成查询”。它是一种在编程语言中嵌入查询的技术,最初是由微软引入到 .NET Framework 中的。LINQ 允许开发人员使用类似 SQL 的查询语法来查询各种数据源,如对象集合、数据库、XML 等,而无需了解底层数据源的实际结构和查询语言。 LINQ 使得数据查询变得更加直观和简洁,同时提高了代码的可读性和可维护性。
Lambda(匿名函数) :Lambda 表达式(Lambda expressions)在计算机编程中是一种匿名函数,它可以作为参数传递给方法或函数。Lambda 表达式允许开发人员简洁地表示函数的逻辑,通常用于函数式编程和 LINQ 查询等场景。
Lambda 表达式的全称是 "Anonymous Function" 或 "Anonymous Delegate",即本质匿名函数或匿名委托。Lambda 表达式在 C#、Java、Python、JavaScript 等多种编程语言中都有支持。
2.异同点
Lambda表达式和LINQ语句都是C#中用于查询和筛选数据的工具,但它们有一些异同点。
异同点:
2.1. 语法不同:Lambda表达式是一种匿名函数或匿名委托,它可以用于创建委托或表达式树。而LINQ语句是一种查询语句,它使用特定的关键字和语法来查询数据。
2.2. 功能不同:Lambda表达式可以用于任何需要委托或表达式树的场合,而LINQ语句只能用于查询和筛选数据。
2.3. 查询方式不同:Lambda表达式是通过方法链式调用来查询数据的,而LINQ语句是通过一种类SQL的语法来查询数据的。
2.4.具体语法:
Lambda表达式的语法:
例如:
Func<int, int, int> add = (a, b) => a + b;
int result = add(3, 5); // 结果为 8
//Lambda--参数随便编辑,匿名--隐去方法名
LINQ语句的语法:
from variable in collection
where condition
select variable
例如:
var result = from student in students
where student.Age > 18
select student;
//Linq是一种在编程语言中嵌入查询的技术,最初是由微软引入到 .NET Framework 中的。LINQ 允许开发人员使用类似 SQL 的查询语法来查询各种数据源,如对象集合List、数据库、XML,DataTable 等,而无需了解底层数据源的实际结构和查询语言