词条 | 精通LINQ数据访问技术:基于C# |
释义 | 精通LINQ数据访问技术:基于C#共13章。第1章至第2章介绍了LINQ的基本语法,如隐型局部变量、Lambda表达式、查询表达式等,详细讲解了LINQ查询的基本子句和操作。第3章至第11章详细介绍了LINQ to SQL、LINQ to Objects、LINQ to DataSet和LINQ to XML 4个组件,用以查询和处理对象数据。第12章至第13章讲解LINQ在ASP.NET Web应用程序和Windows窗体应用程序中的应用,以巩固全书所学习的知识。 目录1 LINQ基础(第1章 LINQ概述 第2章 LINQ语法基础——C#3.0) 目录2 LINQ查询初步(第3章 LINQ查询概述 第4章 LINQ查询子句 第5章 LINQ查询操作) 目录3 LINQtoSQL(第6章 LINQtoSQL对象模型 第7章 数据上下文 第8章 使用LINQ查询和操作数据库) 目录4 LINQtoObjects、DataSet和XML(第9章 LINQtoObject 第10章 LINQtoDataSet 第11章 LINQtoXML) 版权信息书 名: 精通LINQ数据访问技术:基于C# 作 者:侯利军 出版社: 人民邮电出版社 出版时间: 2008 ISBN: 9787115180087 开本: 16 目录1 LINQ基础第1章 LINQ概述1.1 什么是LINQ 3 1.1.1 查询与LINQ 3 1.1.2 LINQ基本架构 4 1.1.3 LINQ基本组成组件 5 1.1.4 LINQ与ADO.NET 5 1.2 搭建开发环境 6 1.2.1 安装VisualStudio2008 6 1.2.2 配置VisualStudio2008 8 1.3 第一个使用LINQ的Web应用程序 9 1.3.1 创建使用LINQ的Web应用程序 9 1.3.2 使用LINQ查询数据 11 1.3.3 配置与LINQ相关的程序集 12 1.3.4 运行使用LINQ的Web应用程序 12 1.3.5 IEnumerable和IEnumerableT接口 13 1.3.6 IQueryable和IQueryableT接口 14 1.3.7 与LINQ相关的命名空间 15 1.4 LINQ查询数据优势展现 15 1.4.1 查询集合中的数据 16 1.4.2 查询数据库中的数据 17 1.4.3 查询DataSet对象中的数据 20 1.4.4 查询XML文件 22 第2章 LINQ语法基础——C#3.02.1 C#3.0概述 25 2.2 使用var创建隐型局部变量 26 2.3 对象和集合初始化器 28 2.3.1 对象初始化器 28 2.3.2 集合初始化器 30 2.4 创建匿名类型的对象 31 2.5 创建隐型数组 34 2.6 Lambda表达式 34 2.6.1 Lambda表达式的输入参数 34 2.6.2 Lambda表达式的语句 35 2.6.3 查询中的Lambda表达式 35 2.6.4 Lambda表达式转换 36 2.7 查询表达式 36 2.7.1 查询表达式基础 36 2.7.2 查询表达式的基本子句 38 目录2 LINQ查询初步第3章 LINQ查询概述3.1 准备用于LINQ查询的数据源 41 3.1.1 准备集合类型的数据源 41 3.1.2 准备DataSet类型的数据源 42 3.1.3 准备SQLServer数据库类型的数据源 43 3.1.4 准备XML类型的数据源 44 3.2 创建LINQ查询表达式 44 3.2.1 创建查询集合类型的查询表达式 44 3.2.2 创建查询DataSet类型的查询表达式 45 3.2.3 创建查询SQLServer数据库类型的查询表达式 45 3.2.4 创建查询XML类型的查询表达式 45 3.3 执行LINQ查询 46 第4章 LINQ查询子句4.1 LINQ查询子句概述 47 4.2 基本子句 48 4.2.1 from子句 48 4.2.2 where子句 52 4.2.3 select子句 54 4.2.4 group子句 56 4.2.5 orderby子句 57 4.2.6 into子句 59 4.2.7 join子句 61 4.2.8 let子句 65 第5章 LINQ查询操作5.1 查询操作概述 67 5.2 筛选操作Where 70 5.3 投影操作 71 5.3.1 选择操作Select 71 5.3.2 选择多个序列操作SelectMany 72 5.4 排序操作 73 5.4.1 按主关键字升序排序操作OrderBy 73 5.4.2 按主关键字降序排序操作OrderByDescending 74 5.4.3 按次要关键字升序排序操作ThenBy 75 5.4.4 按次关键字降序排序操作ThenByDescending 77 5.4.5 顺序反转操作Reverse 78 5.5 聚合操作 79 5.5.1 计算元素数量操作Count 79 5.5.2 求和操作Sum 80 5.5.3 最大值操作Max 81 5.5.4 最小值操作Min 82 5.5.5 平均值操作Average 83 5.5.6 聚合计算操作Aggregate 83 5.5.7 计算元素数量操作LongCount 84 5.6 集合操作 85 5.6.1 去掉集合中的重复元素操作Distinct 86 5.6.2 差集操作Except 87 5.6.3 交集操作Intersect 89 5.6.4 并集操作Union 90 5.7 元素操作 91 5.7.1 获取指定元素操作ElementAt 92 5.7.2 获取指定元素或默认值操作ElementAtOrDefault 93 5.7.3 获取第一个元素操作First 93 5.7.4 获取第一个元素或默认值操作FirstOrDefault 94 5.7.5 获取最后一个元素操作Last 95 5.7.6 获取最后一个元素或默认值操作LastOrDefault 96 5.7.7 获取单个元素操作Single 97 5.7.8 获取单个元素或默认值操作SingleOrDefault 97 5.8 数据类型转换操作 98 5.8.1 转换为泛型集合操作AsEnumerable 99 5.8.2 转换为序列操作AsQueryable 100 5.8.3 转换元素数据类型操作Cast 101 5.8.4 筛选指定类型元素操作OfType 101 5.8.5 转换为泛型列表操作ToList 102 5.8.6 转换为数组操作ToArray 103 5.8.7 转换为字典操作ToDicionary 104 5.8.8 转换为一对多字典操作ToLookup 104 5.9 生成操作 105 5.9.1 创建包含默认元素或空值的集合操作DefaultIfEmpty 106 5.9.2 创建空序列操作Empty 107 5.9.3 创建指定范围值的序列操作Range 107 5.9.4 创建重复元素序列的操作Repeat 108 5.10 限定符操作 108 5.10.1 检查序列所有元素是否满足指定条件的操作All 109 5.10.2 检查序列是否存在满足指定条件的操作Any 110 5.10.3 检查序列是否包含指定元素的操作Contains 110 5.11 数据分区操作 111 5.11.1 跳过指定元素的操作Skip 112 5.11.2 跳过满足指定条件的元素的操作SkipWhile 113 5.11.3 提取指定元素的操作Take 114 5.11.4 提取满足指定条件的元素的序列TakeWhile 114 5.12 联接操作 115 5.12.1 联接操作Join 116 5.12.2 分组联接操作GroupJoin 118 5.13 相等操作SequenceEqual 120 5.14 串联操作Contact 121 目录3 LINQtoSQL第6章 LINQtoSQL对象模型6.1 LINQtoSQL概述 125 6.2 使用VisualStudio2008创建DBML文件 128 6.2.1 创建DBML文件 129 6.2.2 LINQ代码生成工具SqlMetail.exe 131 6.2.3 创建UserInfo表的实体类 132 6.2.4 创建UserInfo表的实体类的属性 133 6.2.5 创建LinqDB数据库的数据上下文的方法 134 6.3 处理EntitySetT类型的结果 137 6.3.1 计算实体数量的Count属性 137 6.3.2 实体项集合的Item属性 137 6.3.3 是否已加载或分配值的HasLoadedOrAssignedValues属性 139 6.3.4 是否具有延迟查询的IsDeferred属性 139 6.3.5 添加实体的Add()方法 141 6.3.6 添加实体集合的AddRange()方法 142 6.3.7 插入实体的Insert()方法 144 6.3.8 移除实体的Remove()方法 145 6.3.9 移除指定索引的实体RemoveAt()方法 146 6.3.10 移除所有实体的Clear()方法 147 6.3.11 查找实体索引的IndexOf()方法 148 6.3.12 查找是否包含实体的Contains()方法 149 6.3.13 分配集合的Assign()方法 150 6.3.14 返回实体枚举的GetEnumerator()方法 151 6.4 处理EntityRefT类型的结果 153 6.5 处理IExecuteResult类型的结果 155 6.6 处理ISingleResultT类型的结果 156 6.7 处理IMultipleResults类型的结果 158 第7章 数据上下文7.1 DataContext概述 160 7.2 DataContext类的属性 162 7.2.1 连接属性Connection 162 7.2.2 事务属性Transaction 162 7.2.3 执行命令的最大时间属性CommandTimeout 164 7.2.4 冲突对象集合属性ChangeConflicts 164 7.2.5 是否延时加载关系属性DeferredLoadingEnabled 166 7.2.6 数据导入选项属性LoadOptions 166 7.2.7 日志属性Log 167 7.3 DataContext类的方法 169 7.3.1 检测数据库是否存在的DatabaseExists()方法 169 7.3.2 创建数据库的CreateDatabase()方法 170 7.3.3 删除数据库的DeleteDatabase()方法 171 7.3.4 执行SQL命令的ExecuteCommand()方法 171 7.3.5 执行SQL查询的ExecuteQuery()方法 172 7.3.6 提交更改到数据库的SubmitChanges()方法 174 7.3.7 获取命令信息的GetCommand()方法 174 7.3.8 获取表集合的GetTable()方法 175 7.3.9 获取已修改对象的GetChangeSet()方法 176 7.3.10 转换IDataReader对象的Translate()方法 178 7.3.11 刷新对象状态的Refresh()方法 179 第8章 使用LINQ查询和操作数据库8.1 查询数据库中的数据 181 8.1.1 简单查询 183 8.1.2 复杂查询 184 8.1.3 排序数据 185 8.1.4 聚合查询 186 8.1.5 分组查询 187 8.2 操作数据库中的数据 189 8.2.1 向数据库中插入数据 189 8.2.2 修改数据库中的数据 191 8.2.3 删除数据库中的数据 193 8.2.4 使用存储过程查询单表数据 195 8.2.5 使用存储过程查询多表数据 197 8.2.6 使用存储过程操作数据 199 8.2.7 使用函数过滤数据 203 目录4 LINQtoObjects、DataSet和XML第9章 LINQtoObject9.1 LINQtoObjects概述 209 9.2 使用LINQ操作集合 209 9.2.1 操作静态数组 210 9.2.2 操作动态数组 211 9.2.3 操作泛型列表ListT 213 9.2.4 操作泛型排序列表SortedListTKey,TValue 214 9.2.5 操作泛型双向链表LinkedListT 216 9.2.6 操作泛型队列QueueT 216 9.2.7 操作泛型堆栈StackT 218 9.2.8 操作泛型哈希集HashSetT 219 9.2.9 操作泛型字典DictionaryTKey,TValue 221 9.2.10 操作泛型排序字典SortedDictionaryTKey,TValue 221 9.2.11 操作泛型通用集合CollectionT 223 9.2.12 操作泛型绑定列表BindingListT 224 9.3 使用LINQ操作字符串 226 9.3.1 查找指定的字符 226 9.3.2 查找指定的字符串 227 9.3.3 词频统计 228 9.3.4 LINQ查询使用正则表达式处理字符串 230 9.4 使用LINQ操作文件目录 232 9.4.1 查询指定名称的文件 232 9.4.2 查询指定扩展名的文件 233 9.4.3 查询指定属性的文件 234 9.4.4 统计文件夹的大小 235 9.4.5 比较两个文件夹中是否存在同名文件 236 9.4.6 查询文件夹所有文件的内容 237 第10章 LINQtoDataSet10.1 LINQtoDataSet概述 239 10.2 DataTableExtensions类 241 10.2.1 AsDataView()方法 241 10.2.2 AsEnumerable()方法 242 10.2.3 CopyToDataTable()方法 244 10.3 DataRowExtensions类 245 10.3.1 泛型FieldT()方法 246 10.3.2 泛型SetFieldT()方法 247 10.4 使用LINQ查询DataSet 249 10.4.1 查询DataSet中的单个表 249 10.4.2 查询DataSet中的多个表 250 10.4.3 使用投影操作查询DataSet 253 10.4.4 使用筛选操作查询DataSet 253 10.4.5 使用排序操作查询DataSet 255 10.4.6 使用聚合操作查询DataSet 256 10.4.7 使用元素操作查询DataSet 258 10.4.8 使用联接操作查询DataSet 259 10.4.9 使用数据分区操作查询DataSet 260 10.4.10 使用集合操作比较DataRow 262 10.5 使用LINQ查询DataView 264 10.5.1 使用LINQ过滤数据 264 10.5.2 使用LINQ排序数据 266 10.5.3 使用LINQ创建DataView 267 第11章 LINQtoXML11.1 LINQtoXML概述 269 11.2 LINQtoXML基础类 271 11.2.1 XElement类 271 11.2.2 XAttribute类 273 11.2.3 XDocument和XDeclaration类 275 11.2.4 XComment类 277 11.2.5 XNamespace类 278 11.2.6 LINQtoXML其他基础类 280 11.3 使用LINQtoXML查询XML文件 281 11.3.1 读取XML文件 281 11.3.2 查询根元素 281 11.3.3 查询指定名称的元素 283 11.3.4 查询指定属性的元素 284 11.3.5 查询指定元素的子元素 284 11.3.6 查询元素并排序 286 11.3.7 查询元素并计算指定的值 287 11.4 使用LINQtoXML操作XML文件 288 11.4.1 创建XML文件 288 11.4.2 添加元素到XML文件 289 11.4.3 修改XML文件中的元素 291 11.4.4 删除XML文件中的元素 292 11.4.5 将XML文件中的属性转换为元素 293 目录5 LINQ应用第12章 LINQ在ASP.NET中的应用12.1 使用LINQ数据源控件 299 12.2 使用LINQ为文本框提供数据 303 12.3 使用LINQ为列表控件提供数据 305 12.4 使用LINQ为Repeater控件提供数据 307 12.5 使用LINQ为DataList控件提供数据 309 12.6 使用LINQ为GridView控件提供数据 311 12.7 使用LINQ为ListView控件提供数据 313 第13章 LINQ在Windows窗体中的应用13.1 创建Windows窗体应用程序 316 13.2 使用LINQ数据源控件 318 13.3 使用LINQ为文本框提供数据 319 13.4 使用LINQ为列表控件提供数据 320 13.5 使用LINQ为DataGridView控件提供数据 320 13.6 使用LINQ为ListView控件提供数据 321 13.7 初始化MainForm窗体 322 13.8 运行Windows窗体应用程序 322 …… |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。