一,LINQ to SQL概述
LINQ to SQL是LINQ中的最重要的一个组件,为.NET Framework 3.5所支持,它可以为关系数据库提供一个对象模型。其中LINQ to SQL最重要的一个功能就是为数据库创建一个对象模型(由基于.NET框架的类组成),并将该对象模型映射到数据库中的相应对象
2、使用VS创建DBML
二,数据库上下文
DataContext又称为数据库上下文,它为LINQ to SQL提供操作数据库的入口,使用LINQ to SQL操作数据库,首先需要为该数据库创建一个继承于DataContext类的自定义的数据库上下文类。
三,处理Table<T>类型的结果
使用Table<T>能够方便的操作数tes据库中的数据
a,DeleteAllonSubmit(TSubEntity)将集合中的所有实体置于pending delete状态;
b,DelectOnSubmit()此表中的实体置于ending delete;
c,DeleteAllonSubmit(TSubEntity)将集合中的所有处于pending delete状态的实体添加到DataContext;
d,InsertOnsubmit()将处于pending insert状态的实体添加到Table<TEntity>.
四,处理EntitySet<T>类型的结果
EntitySet<T>用来描述实体类中包含的其他实体的集合
a,Add()方法能够将元素或实体添加到EntitySet<T>集合末尾;
b,Remove()方法能够从EntitySet<T>中移除指定的元素或实体;
c,RemoveAt()方法能够从EntitySet<T>中移除指定位置处的元素或实体;
d,Contains()方法能够判断在EntitySet<T>中是否包含指定的元素或实体。
五,处理ISingleResult<T>类型的结果
ISingleResult<T>泛型接口表示具有单个返回序列的映射函数的结果
六,查询数据库中的数据
a,from...in子句:指定查询操作的数据源和范围变量;
b,select子句:指定查询结果的类型和表现形式;
c,where子句:筛选元素的逻辑条件,一般有逻辑运算组成;
d,group...by子句:对查询进行分组;
e,orderby子句:对查询结果进行排序,可以是“升序或降序”;
f,join子句:链接多个查询操作的数据源;
g,let子句:引入用于存储查询表达式中的子表达式结果的范围变量;
h,into子句:提供一个临时标识符,充当对join,group,select子句的结果。
简单查询的事例:
复杂查询的事例:
聚合查询的事例: