LINQ技术详解C#2008版  拉特兹(Rattz J.C.),程胜,朱新宁,杨 人民邮电出版社 pdf下载pdf下载

LINQ技术详解C#2008版 拉特兹(Rattz J.C.),程胜,朱新宁,杨 人民邮电出版社 百度网盘pdf下载

作者:
简介:本篇主要提供LINQ技术详解C#2008版 拉特兹(Rattz J.C.),程胜,朱新宁,杨 人民邮电出版社 pdf下载
出版社:
出版时间:2009-07
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

基本信息
书名:LINQ技术详解C#2008版
定价:79.00元
作者: 拉特兹(Rattz J.C.),程胜,朱新宁,杨
出版社:人民邮电出版社
出版日期:2009-07-01
ISBN:9787115207906
字数:
页码:606
版次:1
装帧:平装
开本:16开

编辑推荐


亲爱的读者:《LINQ技术详解C#2008版》是一本完全关于代码的书。确切地讲。《LINQ技术详解C#2008版》从代码开始。从代码结束。在编写《LINQ技术详解C#2008版》时。我期望创建一个有意义的LI NQ示例的宝库。《LINQ技术详解C#2008版》并没有向读者展示简单的使用示例,我努力全面介绍有关LINQ的知识,并演示可以使用的所有LI NQ操作符和原型。通过这些信息。读者可以按照其本身的设计来使用LINQ,并让自己的投资获得的回报。
  贯穿全书,我的目的是以一种读者可以使用的形式提供实际有用的信息。因此,《LINQ技术详解C#2008版》并没有重点介绍无法应用于实际开发中的复杂的示例应用程序,而是重点介绍了每个LINQ操作符、方法或类。不过。在需要使用示例来真正演示一个问题时,也会恰如其分地出现一些比较复杂的示例。例如。演示如何处理并发冲突的代码示例实际上创建了并发冲突,这样读者就可以逐步了解代码并全面了解示例了。
  《LINQ技术详解C#2008版》是写给那些对C#有初步了解,想要学习LINQ和DLINQ相关的C#3.0语言功能的读者的。读者不需要熟悉所有的C#2.0或3.0功能就能理解LINQ的专业知识。在阅读《LINQ技术详解C#2008版》的高级语言功能部分时。也许需要具备更深入的知识,那么我会从基础的地方开始介绍。以确保每个读者都能充分准备好必要的知识。
  Joseph C.Rattz,Jr.

内容提要


《LINQ技术详解C#2008版》将原理介绍与实践操作相结合,全面系统地阐述了Microsoft C# 2008中的语言集成查询(LINQ)技术的专业知识,包括其原理、功能和应用。特别对LINQ在对象、XML、数据集和SQL上的应用进行了深入分析,详细讲解了这些应用可以使用的操作符和操作符原型,并分别给出使用这些操作符的示例和说明,以便读者理解和编写自己的LINQ代码。
  《LINQ技术详解C#2008版》可以为LINQ的初学者、中级用户和高级用户等不同层次的读者提供相应的信息,不仅为LINQ初学者提供入门级的知识和实例,还可以作为LINQ中高级开发人员的工具书。

目录


暂无相关内容

作者介绍


拉特兹(JOSEPH C.RATTZ,JR.)从l990年开始从事软件开发工作,当时有一个朋友请求他帮忙为Commodore Amiga公司编写一个名为ANSI Master的ANSI文本编辑器。后来他又编写了猜词游戏(Gallows)软件。他的编程经历是从编译这些Basic语言开始的,为了获得更快的速度和更强大的功能,他后来使用C语言编写程序。之后,Joe开发了一些应用程序,并卖给了JumpDisk,一家Amiga碟片杂志,也就是Amiga World杂志。由于他居住在一个小城镇,并在非常孤立的平台上进行开发,因此Joe体验到所有错误的编写代码的方法。在努力尝试提高比较低级的应用程序编程水平的时候,他领悟到简单、可维护代码的重要性。在Joe次发现可以使用源代码级调试器的时候,就对它一见钟情了。
两年以后,Joe获得了他的个软件开发机会,成为了Policy Management Systems Corporation公司的初级程序员,他负责在OS/2和PresentatioManager平台上开发基于客户机朋艮务器的保险应用程序。多年来,在为SCT、DocuCorp、IBM、亚特兰大奥委会、CheckFree、NCR、EDS、Delta Technology、Radiant Systems和Genuine Parts Company开发应用程序的过程中,他又获得了C++、UNIX、Java、ASP、ASP.NET、C#、HTML、DHTML和XML的开发技能。Joe喜欢创造性的用户界面设计,并且很重视在服务器端进行规范性开发的必要性。但是,要让他自己选择,他喜欢的兼职开发工作就是调试代码。
Joe在Genuine Parts Company公司(NAPA的母公司)的Automotive Part Group InformatioSystem部门工作过,在那里他是为自己的“孩子”而工作,这个“孩子”就是Storefront网站。这个为NAPA商店设计的网站可以在IBMAS/400网络上提供浏览账号和数据的功能。

文摘


部分 LINQ专业指南: C# 2008中的语言集成查询
  章 你好! LINQ
  1.5 小结
  到现在为止,相信读者应该开始跃跃欲试地想进入到第2章,但是在此之前,本章要提醒读者注意以下这些事情。
  首先,LINQ将要改变.NET开发者查询数据的方式。软件厂商将更加愿意在他们的产品中添加“LINQ兼容”功能,就像他们现在对XML所做的那样。
  请记住,LINQ并不只是添加到开发者工程中的一个新函数库。LINQ是一个完整的查询解决方案,可以根据要查询的数据仓库查询由多个元素组成的数据。当前,开发者可以使用LINQ来查询以下数据源:使用“LINQ到对象”查询内存数据集合,使用“LINQ到XML”查询XML,使用“LINQ到数据集”(DataSet)查询数据集,以及使用LINQ到SQL查询SQL Server数据库。
  此外,请记住本章关于LINQ不仅仅用于查询的那些说明。在使用LINQ实现的一个示例工程中,开发者可以发现LINQ不仅仅对查询数据,而且对将数据转换成所需要的数据格式并在WinForm控件中进行显示都是非常有用的。
  后,也是很重要的一点,就是希望读者不要跳过本章提供的这些技巧和提示信息。如果读者还不太理解这些提示信息,这不是问题。在读者进一步阅读本书时,会越来越明白这些提示的意义。所以,如果读者发现自己还不太明白这些提示,只需要将他们记在心里就可以了。
  毫无疑问,在看了本章的一些LINQ示例和提示之后,读者可能会发现自己对其中的某些LINQ语法疑惑不解。

序言


部分 LINQ专业指南:C#2008中的语言集成查询
章 你好!LINQ 2
1.1 思维转换 2
1.1.1 查询XML 3
1.1.2 查询SQLServer数据库 4
1.2 绪论 5
1.2.1 LINQ是关于数据查询的技术 6
1.2.2 LINQ的组件 6
1.2.3 如何获得LINQ 8
1.3 LINQ并不仅仅用于查询 8
1.4 初学提示 11
1.4.1 在容易混淆的地方使用var关键字 12
1.4.2 对以前版本的集合使用Cast或OfType操作符 13
1.4.3 优先使用OfType操作符而不是Cast操作符 14
1.4.4 不要假定查询是不会出错的 15
1.4.5 利用延迟查询 16
1.4.6 使用DataContext日志 16
1.4.7 使用LINQ论坛 18
1.5 小结 18

第2章 C#3.0语言的LINQ增强功能 19
2.1 C#3.0语言的新功能 19
2.1.1 lambda表达式 20
2.1.2 表达式树 25
2.1.3 关键字变量var.对象初始化和匿名类型 26
2.1.4 扩展方法 31
2.1.5 分部方法 36
2.1.6 查询表达式 38
2.2 小结 50
第2部分 LINQ到对象

第3章 LINQ到对象简介 52
3.1 LINQ到对象概述 52
3.2 IEnumerableT.序列和标准查询操作符 53
3.3 返回IEnumerableT.生成和延迟查询 54
3.4 Func委托 57
3.5 按字母顺序的标准查询操作符交叉引用 58
3.6 小结 60

第4章 延迟操作符 61
4.1 引用的命名空间 61
4.2 引用的程序集 62
4.3 公共类 62
4.4 按目的分类的延迟操作符 64
4.4.1 限定操作符 64
4.4.2 投影操作符 66
4.4.3 分区操作符 76
4.4.4 串联操作符 83
4.4.5 排序操作符 86
4.4.6 连接操作符 103
4.4.7 分组操作符 106
4.4.8 集合操作符 112
4.4.9 转换操作符 118
4.4.10 元素操作符 125
4.4.11 生成操作符 129
4.5 小结 132

第5章 非延迟操作符 133
5.1 引用的命名空间 133
5.2 公共类 133
5.3 按目的分类的非延迟操作符 136
5.3.1 转换操作符 137
5.3.2 相等操作符 149
5.3.3 元素操作符 152
5.3.4 量词操作符 164
5.3.5 聚合操作符 169
5.4 小结 183
第3部分 LINQ到XML

第6章 LINQ到XML简介 186
6.1 简介 189
6.2 假冒的W3CDOMXMLAPI 189
6.3 小结 191

第7章 LINQ到XMLAPI 193
7.1 引用的命名空间 193
7.2 重大的API增强设计 194
7.2.1 使用功能构造来简化XML树构造 194
7.2.2 从以文档为中心到以元素为中心 196
7.2.3 命名.命名空间和前缀 198
7.2.4 提取节点的值 201
7.3 LINQ到XML对象模型 203
7.4 延迟执行查询.节点删除和Halloween问题 204
7.5 XML的创建 207
7.5.1 使用XElement类创建元素 207
7.5.2 使用XAttribute类创建属性 210
7.5.3 使用XComments类创建注释 211
7.5.4 使用XContainer类创建容器 212
7.5.5 使用XDeclaration类创建声明 212
7.5.6 使用XDocumentType类创建文档类型 213
7.5.7 使用XDocument类创建文档 214
7.5.8 使用XName类创建名称 215
7.5.9 使用XNamespace类创建命名空间 216
7.5.10 使用XNode类创建节点 216
7.5.11 使用XprocessingInstruction类创建处理指令 216
7.5.12 使用XstreamingElement类创建流元素 218
7.5.13 使用XText类创建文本 220
7.5.14 使用XCData类创建CData 220
7.6 XML的输出 221
7.6.1 使用XDocument.Save保存文档 221
7.6.2 使用XElement.Save保存文档 222
7.7 XML的输入 223
7.7.1 使用XDocument.Load加载文档 223
7.7.2 使用XElement.Load加载文档 225
7.7.3 使用XDocument.Parse或XElement.Parse解析文档 225
7.8 XML的遍历 226
7.8.1 遍历属性 227
7.8.2 遍历方法 231
7.9 XML的修改 245
7.9.1 添加节点 246
7.9.2 删除节点 250
7.9.3 更新节点 253
7.9.4 子XElement对象的XElement.SetElementValue方法 257
7.10 XML的属性(Attribute) 259
7.10.1 属性(Attribute)的创建 259
7.10.2 属性(Attribute)的遍历 259
7.10.3 属性(Attribute)的修改 263
7.11 XML的注释 267
7.11.1 使用XObject.AddAnnotation方法添加注释 268
7.11.2 使用XObject.Annotation或XObject.Annotations方法访问注释 268
7.11.3 使用XObject.RemoveAnnotations方法删除注释 268
7.11.4 注释示例 268
7.12 XML的事件 272
7.12.1 XObject.Changing 272
7.12.2 XObject.Changed 272
7.12.3 事件的两个示例 273
7.12.4 技巧提示或不确定问题 277
7.13 小结 277

第8章 LINQ到XML操作符 278
8.1 LINQ到XML操作符简介 278
8.2 Ancestors操作符 279
8.2.1 原型 279
8.2.2 示例 280
8.3 AncestorsAndSelf操作符 283
8.3.1 原型 284
8.3.2 示例 284
8.4 Attributes操作符 286
8.4.1 原型 286
8.4.2 示例 287
8.5 DescendantNodes操作符 289
8.5.1 原型 289
8.5.2 示例 289
8.6 DescendantNodesAndSelf操作符 291
8.6.1 原型 291
8.6.2 示例 291
8.7 Descendants操作符.. 292
8.7.1 原型 292
8.7.2 示例 293
8.8 DescendantsAndSelf操作符 295
8.8.1 原型 295
8.8.2 示例 296
8.9 Elements操作符 298
8.9.1 原型 298
8.9.2 示例 298
8.10 InDocumentOrder操作符 300
8.10.1 原型 300
8.10.2 示例 301
8.11 Nodes操作符 302
8.11.1 原型 302
8.11.2 示例 303
8.12 Remove操作符 304
8.12.1 原型 304
8.12.2 示例 304
8.13 小结 306

第9章 其他的XML功能 308
9.1 引用的命名空间 308
9.2 查询 309
9.2.1 不需要到达 309
9.2.2 复杂查询 311
9.3 转换 317
9.3.1 使用XSLT进行转换 318
9.3.2 使用功能构造进行转换 320
9.3.3 提示 322
9.4 验证 329
9.4.1 扩展方法 329
9.4.2 原型 329
9.4.3 获得XML结构描述 330
9.4.4 示例 332
9.5 XPath 344
9.5.1 原型 344
9.5.2 示例 345
9.6 小结 345
第4部分 LINQ到数据集

0章 LINQ到数据集操作符 348
10.1 程序集引用 349
10.2 引用的命名空间 349
10.3 示例中使用的公共代码 349
10.4 数据行集合操作符 351
10.4.1 Distinct操作符 351
10.4.2 Except操作符 355
10.4.3 Intersect操作符 358
10.4.4 Union操作符 360
10.4.5 SequenceEqual操作符 362
10.5 数据行字段操作符 364
10.5.1 FieldT操作符 368
10.5.2 SetFieldT操作符 373
10.6 数据表操作符 376
10.6.1 AsEnumerable操作符 376
10.6.2 CopyToDataTableDataRow操作符 377
10.7 小结 383

1章 其他数据集功能 384
11.1 引用的命名空间 384
11.2 类型化数据集 384
11.3 综合示例 386
11.4 小结 389
第5部分 LINQ到SQL

2章 LINQ到SQL简介 392
12.1 LINQ到SQL简介 393
12.1.1 DataContext类 395
12.1.2 实体类 395
12.1.3 关联 396
12.1.4 并发冲突检测 397
12.1.5 并发冲突解决 397
12.2 运行示例的先决条件 397
12.2.1 获得Northwind数据库的合适版本 397
12.2.2 生成Northwind实体类 398
12.2.3 生成NorthwindXML映射文件 399
12.3 使用LINQ到SQLAPI 399
12.4 IQueryableT 400
12.5 一些常用方法 400
12.5.1 GetStringFromDb 400
12.5.2 ExecuteStatementInDb 401
12.6 小结 402

3章 LINQ到SQL技巧和工具 403
13.1 LINQ到SQL技巧和工具简介 403
13.2 技巧和提示 403
13.2.1 使用DataContext.Log属性 404
13.2.2 使用GetChangeSet方法 405
13.2.3 考虑使用分部类或映射文件 405
13.2.4 考虑使用分部方法 405
13.3 工具 406
13.3.1 SQLMetal 406
13.3.2 对象关系设计器 411
13.4 结合使用SQLMetal和对象关系设计器 423
13.5 小结 423

4章 LINQ到SQL数据库操作 425
14.1 运行示例的先决条件 425
14.1.1 一些常用方法 425
14.1.2 使用LINQ到SQLAPI 426
14.2 标准数据库操作 426
14.2.1 插入 426
14.2.2 查询 431
14.2.3 更新 454
14.2.4 删除 457
14.3 覆盖数据库修改语句 460
14.3.1 覆盖插入方法 461
14.3.2 覆盖更新方法 461
14.3.3 覆盖删除方法 461
14.3.4 示例 462
14.3.5 对象关系设计器中的覆盖功能 464
14.3.6 一些考虑 464
14.4 SQL翻译 465
14.5 小结 467

5章 LINQ到SQL实体类 468
15.1 运行示例的先决条件 468
15.2 实体类 468
15.2.1 创建实体类 468
15.2.2 XML外部映射文件结构描述 498
15.2.3 投影到实体类或非实体类 499
15.3 使用分部方法扩展实体类 504
15.4 重要的System.Data.LinqAPI类 506
15.4.1 EntitySetT 507
15.4.2 EntityRefT 507
15.4.3 TableT 509
15.4.4 IExecuteResult 510
15.4.5 ISingleResultT 511
15.4.6 IMultipleResults 511
15.5 小结 512

6章 DataContext 514
16.1 运行示例的先决条件 514
16.1.1 一些常用方法 514
16.1.2 使用LINQ到SQLAPI 514
16.2 DataContext类 515
16.3 DataContext类 515
16.3.1 主要用途 518
16.3.2 DataContext和DataContext 524
16.3.3 SubmitChanges 537
16.3.4 DatabaseEsts 545
16.3.5 CreateDatabase 546
16.3.6 DeleteDatabase 547
16.3.7 CreateMethodCallQuery 548
16.3.8 ExecuteQuery 550
16.3.9 Translate 552
16.3.10 ExecuteCommand 554
16.3.11 ExecuteMethodCall 555
16.3.12 GetCommand 563
16.3.13 GetChangeSet 564
16.3.14 GetTable 566
16.3.15 Refresh 568
16.4 小结 574

7章 并发冲突 576
17.1 运行示例的先决条件 576
17.1.1 一些常用方法 576
17.1.2 使用LINQ到SQLAPI 576
17.2 并发冲突 576
17.2.1 乐观并发 577
17.2.2 悲观并发 588
17.2.3 中间层和服务器的可选方案 591
17.3 小结 593

8章 其他SQL功能 594
18.1 运行示例的先决条件 594
18.1.1 使用LINQ到SQLAPI 594
18.1.2 使用LINQ到XMLAPI 594
18.2 数据库视图 594
18.3 实体类继承 596
18.4 事务 602
18.5 小结 604