Linq 学习笔记
简介:
LINQ 提供一种统一的方式,让我们能在C#语言中直接查询和操作各种数据。
-
LINQ是用来描述数据访问总体方式的术语。LINQ to Object是针对实现了IEnumerable<T>的对象的LINQ;LINQ to SQL是针对关系数据库的LINQ;LINQ to XML是针对XML文档的LINQ。
-
-
LINQ除了提供一个统一的API来操作各种数据,并且为我们提供了编译时类型检查和动态创建查询表达式的能力。
LIINQ相关的C#语言功能
1.隐式类型局部变量
-
局部变量用var, 指示编译器根据初始化语句右侧的的表达式推测它的类型
-
用途:
var an=new {name=“tom”,age=18};
var an=linq 语句;
2.自动属性
public string FirstName{get;set ;}
3.对象初始化器
-
Point p = new Point { X = 10, Y = 20 };
-
var person = from a in list select new { name=a.FirstName};
4.匿名类型
-
var worker = new { FirstName = "Vincent", LastName = "Ke", Level = 2 };
-
-
匿名类型使用new 运算符和对象初始值设定项创建的
-
匿名类型通常在查询表达式的select 字句中
-
匿名类型是有一个或多个公共只读 属性组成的类型,没有其他成员(方法、事件)
-
匿名类型是直接从对象派生的引用类型,编译器会提供一个名称
-
如果多个匿名类型有相同属性(顺序、个数、类型),编译器将这些匿名类型视为相同类型
5.扩展方法
6 Lambda表达式
-
List<int> evenNumbers = list.FindAll(i => (i % 2) == 0);
-
-
格式:
-
(参数列表)=>表达式或语句块
-
(x,y)=>x*y //多参数,隐式类型=>表达式
-
x=>x*10 //单参数,隐式类型=>表达式
-
X=>{return x*8} //单参数,隐式类型=>语句块
-
(int i)=>x*8 //单参数,显示类型=>表达式
LINQ简介
LINQ体验(4)——LINQ简介和LINQ to SQL语句之Where
单条件 多条件 First()形式
LINQ to SQL语句基本查询操作部分
LINQ体验(5)——LINQ to SQL语句之Select/Distinct和Count/Sum/Min/Max/Avg
LINQ体验(6)——LINQ to SQL语句之Join和Order By
LINQ体验(7)——LINQ to SQL语句之Group By/Having和Exists/In/Any/All/Contains
LINQ体验(8)——LINQ to SQL语句之Union All/Union/Intersect和Top/Bottom和Paging和SqlMethods
LINQ体验(9)——LINQ to SQL语句之Insert/Update/Delete操作
LINQ to SQL语句高级部分
LINQ体验(10)——LINQ to SQL语句之开放式并发控制和事务
LINQ体验(11)——LINQ to SQL语句之Null语义和String/DateTime方法
LINQ体验(12)——LINQ to SQL语句之对象标识和对象加载
LINQ体验(13)——LINQ to SQL语句之运算符转换和ADO.NET与LINQ to SQL
LINQ体验(14)——LINQ to SQL语句之存储过程
LINQ体验(15)——LINQ to SQL语句之用户定义函数
LINQ体验(16)——LINQ to SQL语句之DataContext
LINQ体验(17)——LINQ to SQL语句之动态查询
LINQ体验(18)——LINQ to SQL语句之视图和继承支持