狠狠撸

狠狠撸Share a Scribd company logo
——LINQ 2 SQL
朱晔
2010年10月
.NET 3.5系列培训(二)
内容概要
? LINQ 2 SQL概览
? LINQ 2 SQL使用
? 各种查询方法
? 支持的翻译
? 数据修改和存储过程
? 结合传统方式的使用
? LINQ 2 SQL特性
? 延迟
? 并发
? 事务
? 继承
? 关系
? LINQ 2 SQL其它Tip
? 此次课程的例子包含100个左右的例子,覆盖了LINQ2SQL方方面面
LINQ 2 SQL概览
? ORM
? 定义:是一种为了解决面向对象与关系数据库存在的互不匹
配的现象的技术。
? 常见框架:Subsonic,Nhibernate,Entity Framework,
LINQ2SQL
? LINQ 2 SQL概览
? 基本使用过程
? 日志功能
? 分部方法
? 元数据
? 创建数据库
? 简单的增删改
LINQ 2 SQL使用
? 查询方法 Usage
? 限制: Where (in, or ,and)
? 投影: Select (CASE), SelectMany
? 排序: OrderBy, ThenBy, OrderByDescending, ThenByDescending,
Reverse
? 连接: Join, GroupJoin
? 分组: GroupBy (看似groupby的例子)
? 组: Zip, Distinct, Union, Intersect, Except, Concat
? 聚合: Aggregate, Count, LongCount, Sum, Min, Max, Average
? 分区: Take, Skip, TakeWhile, SkipWhile
? 转换: Cast
? 相等: SequenceEqual
? 元素: First, FirstOrDefault, Last, LastOrDefault, Single, SingleOrDefault,
ElementAt, ElementAtOrDefault, DefaultIfEmpty
? 限定: Any, All, Contains
? SqlMethods:Like, DateDiffxxx
LINQ 2 SQL使用
? 支持的翻译
? 一些基本的比较运算
? 部分.NET字符串方法
? CompareTo() Concat() Contains() EndsWith() Equals() IndexOf()
? Insert() LastIndexOf() Length PadLeft() PadRight() Remove()
? Replace() StartsWith() String() constructor Substring()
? ToLower() ToUpper() Trim()
? 大多数Math类的方法
? 大多数转换方法:
? bool byte short int long float double decimal char string DateTime
? DateTime 的一部分方法
? TimeSpan 的一部分方法
? SqlMethods的所有方法
? 一部分IEnumerable<T>中的方法,比如Contians()
? 查询方法
LINQ 2 SQL使用
? 数据修改 Usage2
? 对象标识
? 改动跟踪
? 改动提交
? 结合传统方式的使用 Usage2
? 存储过程 Usage3
? 标量/单结果集/多结果集
? 增删改使用存储过程
? 自定义函数 Usage3
? 2/8原则
LINQ 2 SQL特性
? 延迟 Features
? 演示延迟执行
? 演示级联延迟加载
? 演示字段延迟加载
? 通过LoadWith来强制加载级联对象
? 通过AssociateWith来限制级联加载的对象
? 演示关闭延迟加载
? 并发 Features2
? 演示并发
? 通过UpdateCheck进行列乐观并发控制
? 处理并发(三层粒度)
? 时间戳列
? 事务(DataContext自动实现事务) Features2
? 继承 Features3
? 关系 Features3
LINQ 2 SQL其它Tip
? 已编译查询
? 外部映射文件 SqlMetal.exe
? 探究查询
? 显式打开连接

More Related Content

Similar to Training ii:linq2sql (20)

PDF
Kid171 chap03 traditional Chinese Version
Frank S.C. Tseng
?
PPT
软件工程 第十一章
浒 刘
?
PDF
王龙:百度数据库架构演变与设计
YANGL *
?
PPT
腾讯大讲堂48 数据库查询优化浅析
George Ang
?
PPT
翱谤补肠濒别北大青鸟完全教程
yiditushe
?
PDF
滨迟辫耻产电子杂志第四期第二稿
yiditushe
?
PPT
Mysql 培训-优化篇
sunmonth
?
PDF
000 北京圣思园教育科技有限公司第一期面授培训大纲
ArBing Xie
?
PDF
Oracle 索引介紹
Chien Chung Shen
?
PDF
[译]No sql生态系统
iammutex
?
PPTX
An introduce to n hibernate (part 1) pub
jiangxu
?
PDF
20150528联动技术大讲堂15(刘胜)业务系统上线标准指引
liu sheng
?
PDF
丁原:海量数据迁移方案
YANGL *
?
PPT
翱谤补肠濒别数据库体系结构介绍.辫辫迟
james tong
?
PDF
百度数据库中间层
yp_fangdong
?
Kid171 chap03 traditional Chinese Version
Frank S.C. Tseng
?
软件工程 第十一章
浒 刘
?
王龙:百度数据库架构演变与设计
YANGL *
?
腾讯大讲堂48 数据库查询优化浅析
George Ang
?
翱谤补肠濒别北大青鸟完全教程
yiditushe
?
滨迟辫耻产电子杂志第四期第二稿
yiditushe
?
Mysql 培训-优化篇
sunmonth
?
000 北京圣思园教育科技有限公司第一期面授培训大纲
ArBing Xie
?
Oracle 索引介紹
Chien Chung Shen
?
[译]No sql生态系统
iammutex
?
An introduce to n hibernate (part 1) pub
jiangxu
?
20150528联动技术大讲堂15(刘胜)业务系统上线标准指引
liu sheng
?
丁原:海量数据迁移方案
YANGL *
?
翱谤补肠濒别数据库体系结构介绍.辫辫迟
james tong
?
百度数据库中间层
yp_fangdong
?

Training ii:linq2sql

  • 1. ——LINQ 2 SQL 朱晔 2010年10月 .NET 3.5系列培训(二)
  • 2. 内容概要 ? LINQ 2 SQL概览 ? LINQ 2 SQL使用 ? 各种查询方法 ? 支持的翻译 ? 数据修改和存储过程 ? 结合传统方式的使用 ? LINQ 2 SQL特性 ? 延迟 ? 并发 ? 事务 ? 继承 ? 关系 ? LINQ 2 SQL其它Tip ? 此次课程的例子包含100个左右的例子,覆盖了LINQ2SQL方方面面
  • 3. LINQ 2 SQL概览 ? ORM ? 定义:是一种为了解决面向对象与关系数据库存在的互不匹 配的现象的技术。 ? 常见框架:Subsonic,Nhibernate,Entity Framework, LINQ2SQL ? LINQ 2 SQL概览 ? 基本使用过程 ? 日志功能 ? 分部方法 ? 元数据 ? 创建数据库 ? 简单的增删改
  • 4. LINQ 2 SQL使用 ? 查询方法 Usage ? 限制: Where (in, or ,and) ? 投影: Select (CASE), SelectMany ? 排序: OrderBy, ThenBy, OrderByDescending, ThenByDescending, Reverse ? 连接: Join, GroupJoin ? 分组: GroupBy (看似groupby的例子) ? 组: Zip, Distinct, Union, Intersect, Except, Concat ? 聚合: Aggregate, Count, LongCount, Sum, Min, Max, Average ? 分区: Take, Skip, TakeWhile, SkipWhile ? 转换: Cast ? 相等: SequenceEqual ? 元素: First, FirstOrDefault, Last, LastOrDefault, Single, SingleOrDefault, ElementAt, ElementAtOrDefault, DefaultIfEmpty ? 限定: Any, All, Contains ? SqlMethods:Like, DateDiffxxx
  • 5. LINQ 2 SQL使用 ? 支持的翻译 ? 一些基本的比较运算 ? 部分.NET字符串方法 ? CompareTo() Concat() Contains() EndsWith() Equals() IndexOf() ? Insert() LastIndexOf() Length PadLeft() PadRight() Remove() ? Replace() StartsWith() String() constructor Substring() ? ToLower() ToUpper() Trim() ? 大多数Math类的方法 ? 大多数转换方法: ? bool byte short int long float double decimal char string DateTime ? DateTime 的一部分方法 ? TimeSpan 的一部分方法 ? SqlMethods的所有方法 ? 一部分IEnumerable<T>中的方法,比如Contians() ? 查询方法
  • 6. LINQ 2 SQL使用 ? 数据修改 Usage2 ? 对象标识 ? 改动跟踪 ? 改动提交 ? 结合传统方式的使用 Usage2 ? 存储过程 Usage3 ? 标量/单结果集/多结果集 ? 增删改使用存储过程 ? 自定义函数 Usage3 ? 2/8原则
  • 7. LINQ 2 SQL特性 ? 延迟 Features ? 演示延迟执行 ? 演示级联延迟加载 ? 演示字段延迟加载 ? 通过LoadWith来强制加载级联对象 ? 通过AssociateWith来限制级联加载的对象 ? 演示关闭延迟加载 ? 并发 Features2 ? 演示并发 ? 通过UpdateCheck进行列乐观并发控制 ? 处理并发(三层粒度) ? 时间戳列 ? 事务(DataContext自动实现事务) Features2 ? 继承 Features3 ? 关系 Features3
  • 8. LINQ 2 SQL其它Tip ? 已编译查询 ? 外部映射文件 SqlMetal.exe ? 探究查询 ? 显式打开连接