Entity Framework 实用精要
作者:吕高旭
出版社:清华大学出版社
出版时间:2018-01-01
ISBN:9787302485933
定价:¥79.00
目 录
第1章 Entity Framework概观 1
1.1 初探Entity Framework 1
1.2 Entity Framework与ADO.NET 9
1.3 对象关联映射——ORM 13
1.4 Entity Framework开发流程 14
1.5 空EF设计器模型 16
1.6 使用Code First 27
1.6.1 来自数据库的Code First 27
1.6.2 空Code First模型 31
1.7 小结 34
第2章 实体数据模型 35
2.1 实体数据模型概观 35
2.2 模型工具与.edmx文件 36
2.2.1 概念模型 39
2.2.2 存储模型 42
2.2.3 映射 42
2.3 实体数据模型与类文件 44
2.4 POCO与实体数据模型 46
2.5 实体类结构映射 53
2.5.1 数据注解属性 54
2.5.2 Fluent API 61
2.6 EF Designer数据库更新 65
2.7 Code First数据库迁移 71
2.7.1 结构变动迁移 76
2.7.2 查看SQL 78
2.7.3 指定迁移 79
2.8 关于DbContext 79
2.8.1 传送SQL语句与数据转换 80
2.8.2 查询与连接议题 81
2.8.3 管理更新操作 82
2.8.4 DbContext对象生命期 83
2.8.5 覆写OnModelCreating方法 83
2.8.6 管理与操作数据库——Database属性 83
2.8.7 ObjectContext 85
2.9 DbSet 87
2.10 追踪本地数据集 91
2.11 小结 94
第3章 实体数据模型与LINQ 95
3.1 LINQ与Entity Framework 95
3.2 Select——选择与投影 99
3.2.1 类型转换 100
3.2.2 多重from与SelectMany 103
3.3 Where与数据筛选 107
3.4 排序 113
3.5 分组 116
3.6 转换 122
3.6.1 AsEnumerable 122
3.6.2 Array与List 125
3.6.3 ToDictionary 128
3.6.4 ToLookup 131
3.7 异步查询 134
3.8 关联——Join 136
3.8.1 GroupJoin 139
3.8.2 Inner join与Left Outer Join 141
3.8.3 Entity Framework与Join 142
3.9 LINQ、SQL与Entity SQL 146
3.9.1 关于SQL语句 147
3.9.2 Entity SQL 147
3.9.3 Entity SQL参数 149
3.10 小结 150
第4章 Entity Framework与扩充方法 151
4.1 Enumerable扩充方法 151
4.2 聚合运算 152
4.2.1 计算平均值 153
4.2.2 Average方法与Func 155
4.2.3 聚合函数 158
4.3 设置操作 160
4.4 产生操作 164
4.4.1 Empty与DefaultIfEmpty 164
4.4.2 Range 166
4.4.3 Repeat 167
4.5 计数运算 169
4.5.1 All 169
4.5.2 Any 171
4.5.3 Contains 172
4.6 分割运算 173
4.6.1 Skip与SkipWhile 174
4.6.2 Take与TakeWhile 176
4.7 元素操作 178
4.7.1 First与FirstOrDefault 178
4.7.2 Last与LastOrDefault 180
4.7.3 ElementAt与ElementAtOrDefault 182
4.7.4 Single与SingleOrDefault 183
4.8 扩展方法的异步版本 185
4.9 小结 186
第5章 数据关联与继承 187
5.1 与关联数据互动 187
5.2 Code Frist与关联设计 194
5.2.1 Code First关联设置惯例 196
5.2.2 数据注解 200
5.3 处理特定关联定义 203
5.3.1 一对一(1 to 0..1) 203
5.3.2 多对多(* to *) 208
5.3.3 多对多关联——附加数据字段 213
5.4 使用CodeFirst设计关联 216
5.5 Lazy Loading与Eager Loading 223
5.5.1 调整virtual属性 229
5.5.2 Include方法与对象加载 231
5.5.3 Include方法与异步数据加载 234
5.6 继承 235
5.6.1 Table Per Hierarchy(TPH) 235
5.6.2 Table Per Type(TPT) 241
5.6.3 Table Per Concrete Class(TPC) 244
5.7 复杂类型 248
5.8 小结 251
第6章 数据编辑与维护 252
6.1 数据编辑操作 252
6.1.1 实体数据对象状态 255
6.1.2 更新与删除 256
6.1.3 Attach 259
6.1.4 变更追踪——DbContext.ChangeTracker 263
6.1.5 更新验证异常——DbEntityValidationException 268
6.1.6 DbContext.ValidateEntity方法 271
6.1.7 覆写SaveChange 272
6.1.8 异步的变更更新 274
6.2 SQL语句 275
6.2.1 使用参数 279
6.2.2 执行非查询变更指令——ExecuteSqlCommand 280
6.3 存储过程 281
6.3.1 直接调用存储过程 288
6.3.2 获取返回值 289
6.3.3 CodeFirst自动设置存储过程 290
6.4 数据变更冲突 294
6.4.1 并发冲突处理——Database Wins或Client Wins 298
6.4.2 SQL语句与数据冲突 300
6.4.3 存储过程与数据冲突 300
6.4.4 ConcurrencyCheck注解 302
6.5 事务处理 304
6.5.1 共享事务处理连接 305
6.5.2 使用TransactionScope 305
6.6 复杂类型的数据对象变更 308
6.7 小结 310
第7章 ASP.NET整合应用 311
7.1 Web Forms与Entity Framework 311
7.1.1 查询 314
7.1.2 更新 315
7.1.3 删除 316
7.1.4 处理单项数据 316
7.1.5 关联设计 319
7.2 MVC与Entity Framework 321
7.2.1 查询 325
7.2.2 更新/删除 326
7.2.3 添加 330
7.2.4 关系型数据 332
7.3 WCF服务与实体数据模型 335
7.3.1 WCF应用程序项目 335
7.3.2 数据合约 339
7.3.3 整合Entity Framework 340
7.4 小结 346