LINQ高级编程(Professional LINQ)
分類: 图书,计算机与互联网,程序语言与软件开发,语言与开发工具,综合,
品牌: Scott Klein
基本信息·出版社:清华大学出版社
·页码:331 页
·出版日期:2009年
·ISBN:7302198853/9787302198857
·条形码:9787302198857
·包装版本:1版
·装帧:平装
·开本:16
·正文语种:中文
·外文书名:Professional LINQ
产品信息有问题吗?请帮我们更新产品信息。
内容简介《LINQ高级编程》结合具体实例详述了LINQ高级编程所涉及的各个方面。共分为LINQ概述、LINQ to XML、LINQ to SQL及附录四大部分,每一部分的各个章节结构清晰,层次明显。《LINQ高级编程》并不是对一种新技术的简单介绍,而是力求使读者通过《LINQ高级编程》的学习能够立即将LINQ应用到自己的项目开发中。《LINQ高级编程》的内容深入浅出,循序渐进,不仅适合LINQ初学者,也可以作为数据库开发人员进阶的参考书。
作者简介SCott K Jein,数据库专家、资深顾问,他对SQL Server、.NET和XML都有着浓厚的兴趣。除本书外,他的著作还包括Professional SQL Server 2005 XML和Professiona/WCF Programming(本书已由清华大华出版社引进并出版,中文版书名为《WCF高级编程》)。除了出版图书之外,Scott Klein还为SOL PASS Community Connector撰写半月刊专题文章,并经常在Wrox网站(www.Wrox.corn)和TopXML网站(www.TopXML.com)上发表文章,在SQL Server和.NET用户群里发言。您可以通过ScottKlein@SalXml.com与他交流。
编辑推荐《LINQ高级编程》由数据库专家scott Klein编写,讲述了如何有效地使用LINQ来查询XML、SQL数据库、ADO.NET DataSet和其他数据源,并对此技术进行了更深入的探讨,展示LINQ够显著地改进应用程序的性能 《LINQ高级编程》首先介绍TLINQ和Visual Studio 2008、LINQ相关的语言特性以及LINQ查询和LINQ标准查询操作符;然后展示了如何在c#和Visual Basic中使用LINQ to XML编程,以及如何使用LINQ to XML处理其他数据模型;接下来依次介绍LINQ to SQL查询、高级查询概念、LINQ to Entities和LINQ to DataSets。所有这些颇具价值的见解为您提供了强有力的新工具,从而使您能够轻松地扩展和访问数据库中的信息。
目录
第1部分 LINQ项目简介
第7章 LINQ项目
1.1 LINQ概述
1.2 标准查询操作符
1.3 LINQ to XML概述
1.4 LINQ to SQL概述
1.5 本章小结
第2章 Visual Studio 2008简介
2.1 Visual Studio 2008
2.2 语言相关的LINQ特性
2.2.1 查询表达式
2.2.2 隐式的类型化变量
2.2.3 匿名类型
2.2.4 对象和集合初始化器
2.2.5 扩展方法
2.2.6 Lambda表达式
2.3 本章小结
第3章 LINQ查询
3.1 LINQ查询简介
3.1.1 获取数据源
3.1.2 创建查询
3.1.3 执行查询
3.1.4 与SQL语法的比较
3.1.5 查询的概念
3.1.6 vat与IEnumerable的比较
3.1.7 常见的查询术语
3.1.8 IQueryable和Iqueryable(Of)接口
3.2 查询语法和方法语法的区别
3.3 使用查询语法和方法语法
3.4 本章小结
第4章 LINQ标准查询操作符
4.1 概述
4.2 标准查询操作符
4.2.1 投影操作符
4.2.2 限制操作符
4.2.3 排序操作符
4.2.4 联接操作符
4.2.5 分组操作符
4.2.6 串联操作符
4.2.7 聚合操作符
4.2.8 集合操作符
4.2.9 生成操作符
4.2.10转换操作符
4.2.11元素操作符
4.2.12相等操作符
4.2.13量词操作符
4.2.14分割操作符
4.3 使用查询操作符
4.4 本章小结
第Ⅱ部分 UNQ to XML
第5章 理解UNQ to XML
5.1 LrNQ toX ML概述
5.2 LINQt o XML编程基础
5.2.1 LINQ to XML类
5.2.2 XElement类、
5.2.3 XAttribute类
5.2.4 XD ocument类
5.3 LrNQtoXML编程概念
5.3.1 处理已有的XML
5.3.2 使用LINQ to XML保存XML
5.3.3 创建XML
5.3.4 遍历XML
5.3.5 操纵XML
5.3.6 处理属性
5.4 LINQ to XML与其他XML技术的比较
5.4.1 LINQ to XML与DOM的比较
5.4.2 LINQ to XML与Xml Reader的比较
5.4.3 LINQ to XML与XSL7的比较
5.4.4 LrNQ to XML与MSXML的比较
5.5 本章小结
第6章 LINQ to XML编程
6.1 创建树
6.1.1 C#中树的创建
6.1.2 Visual Basic中树的创建
6.2 使用文本填充XML树
6.3 查询XML树
6.4 修改和重构XML树
6.5 序列化XML
6.6 名称空间
6.7 本章小结
第7章 LINQ to XML和其他LINQ数据模型
7.1 SQL to XML
7.2 XML to SQL
7.2.1 插入
7.2.2 更新
7.3 本章小结
第8章 LINQ to XML编程高级主题
8.1 LINQ to XML函数构造
8.2 LINQ to XML批注
8.3 LINQ to XML轴
8.3.1 Ancestors
8.3.2 Descendants
8.3.3 Ancestors And Self
8.3.4 Descendants And Self
8.3.5 ElementsAfterSelf和Elements Before Self
8.4 LINQ to XML事件
8.4.1 Changing事件
8.4.2 Changed事件
8.5 流式处理XML文档
8.6 流式处理大型XML文档
8.7 本章小结
第9章 LINQ to XML和Visua Basic.NET
9.1 创建XML
9.1.1 XML文本简介
9.1.2 表达式
9.1.3 嵌入查询
9.1.4 理解Visual BasicXML文本中的空白
9.2 访问XML
9.3 加载XML
9.4 使用Parse方法操纵XML
9.5 Visual Basic下LINQ to XML的示例
9.6 本章小结
第Ⅲ部分 LINP to SQL
第10章 UNQ to SQL概述
10.1 理解LINQ to SQL
1O.2 LINQ to SQL对象模型
10.3 基于属性的映射
10.3.1 使用Data base属性
10.3.2 映射表
10.3 ‘3映射列
10.3.4 映射关系
10.3.5 映射存储过程
10.3.6 映射函数
10.3.7 使用Parameter属性
10.4 关系数据基础
10.4.1 主键
10.4.2 外键
10.5 本章小结
第11章 LINQ to SQL查询
11.1 查询的概念
11.2 Data Context
11.3 强类型的Data Context
11.4 数据操纵
11.4.1 插入
11.4.2 更新
11.4.3 删除
11.5 处理对象
11.5.1 插入
11.5.2 更新
11.5.3 删除
11.6 存储过程和用户自定义函数
11.6.1 映射并调用存储过程
11.6.2 映射并调用用户自定义函数
11.7 本章小结
第12章 高级查询概念
12.1 数据库关系
12.1.1 表示关系
12.1.2 查询
12.2 已编译查询
12.3 远程查询执行与本地查询执行的比较
12.3.1 远程执行
12.3.2 本地执行
12.4 延迟数据加载与立即数据加载的比较
12.4.1 Data Shape类
12.4.2 关闭延迟加载
12.5 组合键
12.6 只读数据
12.7 本章小结
第13章 实体类
13.1 跟踪实体变更
13.2 提交实体类变更
13.3 并发变更和并发冲突
13.3.1 Ljpdate Check特性
13.3.2 Don flict Mode枚举
13.3.3 Change Conflict Exceptio类
13.3.4 RefreshMode枚举
13.4 使用事务
13.5 本章小结
第14章 UNQ to DataSet
14.1 LINQ to DataSet概述
14.2 创建LINQ to Data Set项目
14,3向Data Set中加载数据
14.4 LINQ to Data Set查询
14.4.1 单表查询
14.4.2 多表查询
14.4.3 类型化Data et
14.5 数据绑定
14.6 比较Data Row
14.7 本章小结
第15章 UNQ to SQL高级论题
15.1 对象关系设计器
15.1.1 创建和打开O/RDesigner
15.1.2 创建/配置Data Context
15.1.3 为表/视图映射创建实体类
15.1.4 存储过程和函数的Data Context映射
15.1.5 通过调用存储过程实现使用实体类保存数据
15.2 扩展0/R设计器生成的代码
15.3 O/R设计器中类的复数
15.4 SQL Metal
15.5 外部映射
15.6 多层操作
15.7 N层最佳实践
15.7.1 乐观并发
15.7.2 插入/删除
15.7.3 N层示例
15.8 设计器示例
15.9 本章小结
第Ⅳ部分 附录
附录A 案例分析
附录B LINQ to Entities:ADO.NET
Entity Framework
LINQ to XSD
……[看更多目录]
序言相信任何在应用程序中需要与数据库打交道的开发人员都会喜欢上LINQ。试想一下,在应用程序中能够以面向对象的方式直接编写访问各种数据源的语句,并且还有IntelliSense、编译类型检查和调试支持等能够大大提高开发效率的特性可以使用,您是不是觉得编写查询突然变成了一种享受?
是的,在读完本书的前言后我立刻就有了这种感觉。但随之而来的问题是,作为一项新技术,LINQ是不是难于掌握与使用?开始时我确实也有过这种担心。但当您读完本书后,就会发现这种担心是多余的,您甚至立即就能用LINQ来编写自己的应用程序。当然,这需要具备基本的编程基础和数据库开发经验。对于初学者而言,自己动手尝试一下LINQ的强大功能也不是很困难。这是因为,虽然本书的书名是《LINQ高级编程》,但作者凭借自己对数据库相关技术的理解与丰富的实践经验,用浅显易懂的描述及轻松简洁的语言为读者讲解了LINQ的方方面面,包括其起源、演变、基本语法与操作,以及当前LINQ版本中的两项核心技术——LINQtoXML和LINQtoSQL。伴随着每一部分的讲解以及每个知识点的讨论,作者用具体的开发实例及运行结果使读者对LINQ的强大功能有了第一时间的直观认识。并且,在实例的实现过程中,作者还在恰当的位置指出了在使用此项技术时需要注意的细节。在附录部分,作者通过一个使用LINQ来升级现有应用程序的实例说明了LINQ同样可以快捷、高效地应用于已有系统。最后,作者介绍了两项将在VisualStudio2008后续版本中实现的LINQ技术:LINQtoXSD和LINQtotheADONETEntityFramework。毫无疑问,这两项新技术的推出将会给开发人员带来新的惊喜。因此,如果您有幸读到本书,那么您一定会兴奋不已。
本书由李宝翻译,由肖国尊负责本书的翻译质量和进度的控制。
鉴于译者水平有限,难免存在错漏之处,还望谅解并不吝指正。如果您有什么反馈,请将信息发送到邮箱wkservice@vip.163.com,我将不胜感激。
译者
2009年1月于长沙
文摘插图:
第Ⅰ部分 LINQ项目简介
第1章 LINQ项目
我经常听说这样的问题,“什么是LINQ?”,“它是用来做什么的?”,“我们为什么需要它?”。第一个问题(以及随后的其他两个问题)的答案是,语言集成查询(LanguageIntegrated Query,LINQ)是一系列标准查询操作符的集合,这些操作符几乎对每一种数据源的导航、过滤和执行操作都提供了底层的基本查询架构。LINQ可查询的数据源包括XML(可使用LINQ to XML,即原来的XLINQ)、关系数据(使用LINQ to SQL,即先前的DLINQ)、AD0.NET DataSets(使用LINQ to DataSet),以及内存中的数据。
理解这项奇妙的新技术的最好方法就是了解一些关于LINQ如何出现以及为什么出现的历史和背景。
虽然人们最早听说LINQ是在2005年秋季,但实际上2003年初微软就启动了LINQ的开发。LINQ的总体目标是使开发人员更容易地处理SQL和XML数据,这主要是因为在关系数据(数据库)及与其通信(即对关系数据进行处理)的编程语言之间没有任何联系,对于XML同样也是如此。
大多数开发人员现在都能理解面向对象(object.oriented,OO)编程及其相关技术和特性,如类、方法、对象等。面向对象编程在过去十多年就已有巨大的发展,但即使在当前,如果要操纵的信息不是使用00方式定义的或本身就不具有00特性,通过O0技术使用和整合这些信息时仍然存在难以逾越的鸿沟。