Linq 学习笔记

简介:

LINQ 提供一种统一的方式,让我们能在C#语言中直接查询和操作各种数据。

  • LINQ是用来描述数据访问总体方式的术语。LINQ to Object是针对实现了IEnumerable<T>的对象的LINQLINQ to SQL是针对关系数据库的LINQLINQ 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语句之视图和继承支持

 

posted @ 2014-05-16 11:20  编程笔记  阅读(375)  评论(0编辑  收藏  举报