词条 | C#高级编程(第6版) |
释义 | 基本信息中文名: C#高级编程 (第6版) 原名: Professional C# 2008 作者: (美)内格尔(Nagel.C) 译者: 李铭 黄静 图书分类: 软件 出版社: 清华大学出版社 书号: 9787302184959 发行时间: 2008年10月01日 地区: 大陆 语言: 简体中文 简介C#经典名著!也是Wrox皮书中最畅销的品种之一,从第 1版开始就名满天下:其第3版被中华读书报、CSDN、《程序员》等机构评选为2005年最权威的十大IT图书之一;在中国版协、中国出版科学研究所、《出版参考》杂志组织的“2005年度输出版、引进版优秀图书”评选活动中获得“2005年度引进版科技类优秀图书”奖其第4版被多家IT相关机构和媒体联合评为“2006年最受读者喜爱的十大技术开发类图书”。 第6版面向C#2008和,NET 3.5,在全面展示,NET和C#新特性的同时继续完善原有的内容,是有一些C#基础知识的读者或者想迁移到C#的其他程序员全面掌握C#2008的首选教程。 作者简介李铭,信息管理专业硕士,拥有近8年的系统开发经验,曾开发过监考系统、宽带教学系统、人员管理系统和综合业务系统等,现就职于某部队研究所,从事.NET、Oracle和Linux等方面的开发和管理工作,曾发表过多篇计算机专业论文,也翻译和编写过几部著作。 黄静,计算机专业博士,在程序设计、软件工程和网络安全等方面有着多年的研究和实战经验,曾为.NET技术在国内的推广作出了重要贡献,翻译和发表了多篇有关.NET的技术文档或文章。 编辑推荐本书为C#经典名著!是Wrox红皮书中最畅销的品种之一。从第1版开始就名满天下,其第3版被评选为2005年最权威的十大IT图书之一,并荣获 “2005年度引进版科技类优秀图书”奖。更可贺的是,其第4版又荣获“2006年最受读者喜爱的十大技术开发类图书”!第6版在详尽论述C# 2005的基础上,又增加了.NET 3.0 Framework的新特性,更加完善了C#的技术。是缺乏C#或.NET编程经验,但有其他语言编程经验的开发人员,以及了解.NET 2.0,而且对.NET 3.0和Visual Studio 2005有兴趣的程序员全面掌握C#的首选教程。 本书以.NET 3.5和VS2008为基础,是C# 2008及其环境的最终指南。本书首先介绍了.NET的体系结构和方法论,解释了C#语言不能孤立看待,而必须放在.NET Framework中考虑的原因。在论述了C#的基础知识之后,深入探讨了C#编程的所有内容。 本书添加了许多新示例,来解释如何使用C#完成各种任务。另外,还增加了一些全新的章节,包括LINQ、SQL、ADO NET实体、Windows Communication Foundation、Windows Workflow Foundation、Windows Presentation Foundation、数组、系统事务处理、跟踪、事件日志等,使读者能清晰、全面地理解C# 2008提供的所有功能。 本书主要内容 编写Windows应用程序和Windows服务 用ASP NET 3.5编写Web页面 用C#处理XML的技巧 用ADO NET访问数据库 用C# 2008生成图形 各种C#插件 用LINQ轻松地处理SQL Server数据库和XML 本书读者对象 本书适用于希望学习C#开发语言的最新版本的、有经验的开发人员。 2005年最权威的十大IT图书!2005年度引进版科技类优秀图书!2006年最受读者喜爱的十大技术开发类图书!2007年最畅销的C#零售图书! 1.C#经典名著!是Wrox红皮书中最畅销的品种之一。 2.其第3版被评选为2005年最权威的十大IT图书之一,并荣获“2005年度引进版科技类优秀图书”奖 3.其第4版又荣获“2006年最受读者喜爱的十大技术开发类图书” 4.是2007年最畅销的C#零售图书 5.2008年,最新的第6版在详尽论述C# 2005的基础上,又增加了.NET 3.5 Framework的新特性,更加完善了C#的技术 6.以.NET 3.5和Visual Studio 2008为基础,是程序员全面掌握C#的首选教程 目录第Ⅰ部分 C# 语言 第1章 .NET体系结构 1.1 C#与.NET的关系 1.2 公共语言运行库 1.2.1 平台无关性 1.2.2 提高性能 1.2.3 语言的互操作性 1.3 中间语言 1.3.1 面向对象和接口的支持 1.3.2 相异值类型和引用类型 1.3.3 强数据类型 1.3.4 通过异常处理错误 1.3.5 特性的使用 1.4 程序集 1.4.1 私有程序集 1.4.2 共享程序集 1.4.3 反射 1.5 .NET Framework类 1.6 命名空间 1.7 用C#创建.NET应用程序 1.7.1 创建ASP NET应用程序 1.7.2 创建Windows窗体 1.7.3 使用Windows Presentation Foundation(WPF) 1.7.4 Windows控件 1.7.5 Windows服务 1.7.6 Windows Communication Foundation(WCF) 1.8 C#在.NET企业体系结构中的作用 1.9 小结 第2章 C#基础 2.1 引言 2.2 第一个C#程序 2.2.1 代码 2.2.2 编译并运行程序 2.2.3 详细介绍 2.3 变量 2.3.1 变量的初始化 2.3.2 类型推断 2.3.3 变量的作用域 2.3.4 常量 2.4 预定义数据类型 2.4.1 值类型和引用类型 2.4.2 CTS类型 2.4.3 预定义的值类型 2.4.4 预定义的引用类型 2.5 流控制 2.5.1 条件语句 2.5.2 循环 2.5.3 跳转语句 2.6 枚举 2.7 数组 2.8 命名空间 2.8.1 using语句 2.8.2 命名空间的别名 2.9 Main()方法 2.9.1 多个Main()方法 2.9.2 给Main()方法传送参数 2.10 有关编译C#文件的更多内容 2.11 控制台I/O 2.12 使用注释 2.12.1 源文件中的内部注释 2.12.2 XML文档说明 2.13 C#预处理器指令 2.13.1 #define和 #undef 2.13.2 #if, #elif, #else和#endif 2.13.3 #warning和 # error 2.13.4 #region和#endregion 2.13.5 #line 2.13.6 #pragma 2.14 C#编程规则 2.14.1 用于标识符的规则 2.14.2 用法约定 2.15 小结 第3章 对象和类型 3.1 类和结构 3.2 类成员 3.2.1 数据成员 3.2.2 函数成员 3.2.3 只读字段 3.3 匿名类型 3.4 结构 3.4.1 结构是值类型 3.4.2 结构和继承 3.4.3 结构的构造函数 3.5 部分类 3.6 静态类 3.7 Object类 3.7.1 System.Object方法 3.7.2 ToString()方法 3.8 扩展方法 3.9 小结 第4章 继承 4.1 继承的类型 4.1.1 实现继承和接口继承 4.1.2 多重继承 4.1.3 结构和类 4.2 实现继承 4.2.1 虚方法 4.2.2 隐藏方法 4.2.3 调用函数的基类版本 4.2.4 抽象类和抽象函数 4.2.5 密封类和密封方法 4.2.6 派生类的构造函数 4.3 修饰符 4.3.1 可见性修饰符 4.3.2 其他修饰符 4.4 接口 4.4.1 定义和实现接口 4.4.2 派生的接口 4.5 小结 第5章 数组 5.1 简单数组 5.1.1 数组的声明 5.1.2 数组的初始化 5.1.3 访问数组元素 5.1.4 使用引用类型 5.2 多维数组 5.3 锯齿数组 5.4 Array类 5.4.1 属性 5.4.2 创建数组 5.4.3 复制数组 5.4.4 排序 5.5 数组和集合接口 5.5.1 IEumerable接口 5.5.2 ICollection接口 5.5.3 IList接口 5.6 枚举 5.6.1 IEnumerator接口 5.6.2 foreach语句 5.6.3 yield语句 5.7 小结 第6章 运算符和类型强制转换 6.1 运算符 6.1.1 运算符的简化操作 6.1.2 条件运算符 6.1.3 checked和unchecked运算符 6.1.4 is运算符 6.1.5 as运算符 6.1.6 sizeof运算符 6.1.7 typeof运算符 6.1.8 可空类型和运算符 6.1.9 空接合运算符 6.1.10 运算符的优先级 6.2 类型的安全性 6.2.1 类型转换 6.2.2 装箱和拆箱 6.3 对象的相等比较 6.3.1 引用类型的相等比较 6.3.2 值类型的相等比较 6.4 运算符重载 6.4.1 运算符的工作方式 6.4.2 运算符重载的示例:Vector结构 6.5 用户定义的数据类型转换 6.5.1 执行用户定义的类型转换 6.5.2 多重数据类型转换 6.6 小结 第7章 委托和事件 7.1 委托 7.1.1 在C#中声明委托 7.1.2 在C#中使用委托 7.1.3 简单的委托示例 7.1.4 BubbleSorter示例 7.1.5 多播委托 7.1.6 匿名方法 7.1.7 表达式 7.1.8 协变和抗变 7.2 事件 7.2.1 从接收器的角度讨论事件 7.2.2 生成事件 7.3 小结 第8章 字符串和正则表达式 8.1 System.String类 8.1.1 创建字符串 8.1.2 StringBuilder成员 8.1.3 格式化字符串 8.2 正则表达式 8.2.1 正则表达式概述 8.2.2 RegularExpressionsPlayaround示例 8.2.3 显示结果 8.2.4 匹配、组合和捕获 8.3 小结 第9章 泛型 9.1 概述 9.1.1 性能 9.1.2 类型安全 9.1.3 二进制代码的重用 9.1.4 代码的扩展 9.1.5 命名约定 9.2 创建泛型类 9.3 泛型类的特性 9.3.1 默认值 9.3.2 约束 9.3.3 继承 9.3.4 静态成员 9.4 泛型接口 9.5 泛型方法 9.6 泛型委托 9.6.1 执行委托调用的方法 9.6.2 对Array类使用泛型委托 9.7 Framework的其他泛型类型 9.7.1 结构Nullable 9.7.2 EventHandler 9.7.3 ArraySegment 9.8 小结 第10章 集合 10.1 集合接口和类型 10.2 列表 10.2.1 创建列表 10.2.2 只读集合 10.3 队列 10.4 栈 10.5 链表 10.6 有序表 10.7 字典 10.7.1 键的类型 10.7.2 字典示例 10.7.3 Lookup类 10.7.4 其他字典类 10.8 HashSet 10.9 位数组 10.9.1 BitArray 10.9.2 BitVector32 10.10 性能 10.11 小结 第11章 Language Integrated Query 11.1 LINQ概述 11.1.1 使用List的查询 11.1.2 扩展方法 11.1.3 λ表达式 11.1.4 LINQ查询 11.1.5 推迟查询的执行 11.2 标准的查询操作符 11.2.1 过滤 11.2.2 用索引来过滤 11.2.3 类型过滤 11.2.4 复合的from子句 11.2.5 排序 11.2.6 分组 11.2.7 对嵌套的对象分组 11.2.8 连接 11.2.9 设置操作 11.2.10 分区 11.2.11 合计操作符 11.2.12 转换 11.2.13 生成操作符 11.3 表达式树 11.4 LINQ提供程序 11.5 小结 第12章 内存管理和指针 12.1 后台内存管理 12.1.1 值数据类型 12.1.2 引用数据类型 12.1.3 垃圾收集 12.2 释放未托管的资源 12.2.1 析构函数 12.2.2 IDisposable接口 12.2.3 实现IDisposable接口和析构函数 12.3 不安全的代码 12.3.1 用指针直接访问内存 12.3.2 指针示例:PointerPlayaround 12.3.3 使用指针优化性能 12.4 小结 第13章 反射 13.1 定制特性 13.1.1 编写定制特性 13.1.2 定制特性示例:WhatsNewAttributes 13.2 反射 13.2.1 System.Type类 13.2.2 TypeView示例 13.2.3 Assembly类 13.2.4 完成WhatsNewAttributes示例 13.3 小结 第14章 错误和异常 14.1 异常类 14.2 捕获异常 14.2.1 执行多个catch块 14.2.2 在其他代码中捕获异常 14.2.3 System.Exception属性 14.2.4 没有处理异常时所发生的情况 14.2.5 嵌套的 try块 14.3 用户定义的异常类 14.3.1 捕获用户定义的异常 14.3.2 抛出用户定义的异常 14.3.3 定义异常类 14.4 小结 第Ⅱ部分 Visual Studio 第15章 Visual Studio 2008 15.1 使用Visual Studio 2008 15.1.1 创建项目 15.1.2 解决方案和项目 15.1.3 Windows应用程序代码 15.1.4 读取Visual Studio 6项目 15.1.5 项目的浏览和编码 15.1.6 生成项目 15.1.7 调试 15.2 修订功能 15.3 多目标 15.4 WPF、WCF、WF等 15.4.1 在Visual Studio中建立WPF应用程序 15.4.2 在Visual Studio中建立WF应用程序 15.5 小结 第16章 部署 16.1 部署的设计 16.2 部署选项 16.2.1 Xcopy实用工具 16.2.2 Copy Web工具 16.2.3 发布Web站点 16.2.4 部署项目 16.2.5 ClickOnce 16.3 部署的要求 16.4 部署.NET运行库 16.5 简单的部署 16.5.1 Xcopy部署 16.5.2 Xcopy和Web应用程序 16.5.3 Copy Web工具 16.5.4 发布Web站点 16.6 Installer项目 16.6.1 Windows Installer 16.6.2 创建安装程序 16.7 ClickOnce 16.7.1 ClickOnce操作 16.7.2 发布应用程序 16.7.3 ClickOnce设置 16.7.4 应用程序缓存 16.7.5 安全性 16.7.6 高级选项 16.8 小结 第Ⅲ部分 基类库 第17章 程序集 17.1 程序集的含义 17.1.1 程序集的特性 17.1.2 程序集的结构 17.1.3 程序集的清单 17.1.4 命名空间、程序集和组件 17.1.5 私有程序集和共享程序集 17.1.6 辅助程序集 17.1.7 查看程序集 17.2 构建程序集 17.2.1 创建模块和程序集 17.2.2 程序集的属性 17.3 动态加载和创建程序集 17.4 应用程序域 17.5 共享程序集 17.5.1 强名 17.5.2 使用强名获得完整性 17.5.3 全局程序集缓存 17.5.4 创建共享程序集 17.5.5 创建强名 17.5.6 安装共享程序集 17.5.7 使用共享程序集 17.5.8 程序集的延迟签名 17.5.9 引用 17.5.10 本机图像生成器 17.6 配置.NET应用程序 17.6.1 配置类别 17.6.2 为搜索程序集配置目录 17.7 版本问题 17.7.1 版本号 17.7.2 编程获取版本 17.7.3 应用程序配置文件 17.7.4 发布方的策略文件 17.7.5 运行库的版本 17.8 小结 第18章 跟踪和事件 18.1 跟踪 18.1.1 跟踪源 18.1.2 跟踪开关 18.1.3 跟踪监听器 18.1.4 过滤器 18.1.5 断言 18.2 事件日志 18.2.1 事件日志体系架构 18.2.2 事件日志类 18.2.3 创建事件源 18.2.4 写入事件日志 18.2.5 资源文件 18.3 性能监控 18.3.1 性能监控类 18.3.2 性能计数器的构建 18.3.3 添加PerformanceCounter组件 18.3.4 perfmon.exe 18.4 小结 第19章 线程和同步 19.1 概述 19.2 异步委托 19.2.1 投票 19.2.2 等待句柄 19.2.3 异步回调 19.3 Thread类 19.3.1 给线程传送数据 19.3.2 后台线程 19.3.3 线程的优先级 19.3.4 控制线程 19.4 线程池 19.5 线程问题 19.5.1 竞态条件 19.5.2 死锁 19.6 同步 19.6.1 lock语句和线程安全 19.6.2 Interlocked 19.6.3 Monitor类 19.6.4 等待句柄 19.6.5 Mutex类 19.6.6 Semaphore类 19.6.7 Events类 19.6.8 ReaderWriterLockSlim 19.7 Timer类 19.8 COM单元 19.9 基于事件的异步模式 19.9.1 BackgroundWorker类 19.9.2 激活取消功能 19.9.3 激活进度功能 19.9.4 创建基于事件的异步组件 19.10 小结 第20章 安全性 20.1 身份验证和授权 20.1.1 标识和Principal 20.1.2 角色 20.1.3 声明基于角色的安全性 20.1.4 客户应用程序服务 20.2 加密 20.2.1 签名 20.2.2 密钥的互换和安全传送 20.3 资源的访问控制 20.4 代码访问的安全性 20.4.1 权限 20.4.2 代码组 20.4.3 策略的级别:Machine、User和Enterprise 20.5 安全策略的管理 20.5.1 代码组和权限的管理 20.5.2 安全性的启用和禁用 20.5.3 代码组的创建 20.5.4 代码组的删除 20.5.5 代码组权限的更改 20.5.6 权限集的创建和应用 20.5.7 使用强名发布代码 20.5.8 使用证书发布代码 20.6 小结 第21章 本地化 21.1 System.Globalization命名空间 21.1.1 Unicode问题 21.1.2 文化和区域 21.1.3 使用文化 21.1.4 排序 21.2 资源 21.2.1 创建资源文件 21.2.2 资源文件生成器 21.2.3 ResourceWriter 21.2.4 使用资源文件 21.2.5 System.Resources命名空间 21.3 使用Visual Studio的Windows Forms本地化示例 21.3.1 编程修改文化 21.3.2 使用定制资源文件 21.3.3 资源的自动回退 21.3.4 外包翻译 21.4 用ASP NET本地化 21.5 用WPF本地化 21.5.1 WPF应用程序 21.5.2 .NET资源 21.5.3 用XAML本地化 21.6 定制的资源读取器 21.6.1 创建DatabaseResourceReader类 21.6.2 创建DatabaseResourceSet类 21.6.3 创建DatabaseResource-Manager类 21.6.4 DatabaseResourceReader的客户应用程序 21.7 创建定制文化 21.8 小结 第22章 事务处理 22.1 概述 22.1.1 事务处理阶段 22.1.2 ACID属性 22.2 数据库和实体类 22.3 传统的事务处理 22.3.1 ADO NET事务处理 22.3.2 System.EnterpriseServices 22.4 System.Transactions 22.4.1 可提交的事务处理 22.4.2 事务处理的升级 22.4.3 依赖的事务处理 22.4.4 环境事务处理 22.5 隔离级别 22.6 定制资源管理器 22.7 Windows Vista和Windows Server 2008 的事务处理 22.8 小结 第23章 Windows服务 23.1 Windows服务 23.2 Windows服务的体系结构 23.2.1 服务程序 23.2.2 服务控制程序 23.2.3 服务配置程序 23.3 System.ServiceProcess命名空间 23.4 创建Windows服务 23.4.1 使用套接字的类库 23.4.2 TcpClient示例 23.4.3 Windows服务项目 23.4.4 线程和服务 23.4.5 服务的安装 23.4.6 安装程序 23.5 服务的监视和控制 23.5.1 MMC计算机管理 23.5.2 net.exe 23.5.3 sc.exe 23.5.4 Visual Studio Server Explorer 23.5.5 ServiceController类 23.6 故障排除 23.6.1 交互式服务 23.6.2 事件日志 23.7 电源事件 23.8 小结 第24章 互操作性 24.1 .NET和COM 24.1.1 元数据 24.1.2 释放内存 24.1.3 接口 24.1.4 方法绑定 24.1.5 数据类型 24.1.6 注册 24.1.7 线程 24.1.8 错误处理 24.1.9 事件处理 24.2 编组 24.3 在.NET客户程序中使用COM组件 24.3.1 创建COM组件 24.3.2 创建Runtime Callable Wrapper 24.3.3 使用RCW 24.3.4 可交互操作的主程序集 24.3.5 线程问题 24.3.6 添加连接点 24.3.7 在Windows窗体中使用ActiveX控件 24.3.8 在ASP NET中使用COM对象 24.4 在COM客户程序中使用.NET组件 24.4.1 COM Callable Wrapper 24.4.2 创建.NET组件 24.4.3 创建类型库 24.4.4 COM互操作特性 24.4.5 COM注册 24.4.6 创建COM客户程序 24.4.7 添加连接点 24.4.8 用sink对象创建客户程序 24.4.9 在Internet Explorer中运行Windows窗体控件 24.5 平台调用 24.6 小结 第Ⅳ部分 数 据 第25章 文件和注册表操作 25.1 管理文件系统 25.1.1 表示文件和文件夹的.NET类 25.1.2 Path类 25.1.3 示例:文件浏览器 25.2 移动、复制和删除文件 25.2.1 FilePropertiesAndMovement示例 25.2.2 示例FilePropertiesAnd-Movement的代码 25.3 读写文件 25.3.1 读取文件 25.3.2 写入文件 25.3.3 流 25.3.4 缓存的流 25.3.5 使用FileStream类读写二进制文件 25.3.6 读写文本文件 25.4 读取驱动器信息 25.5 文件的安全性 25.5.1 从文件中读取ACL 25.5.2 从目录中读取ACL 25.5.3 添加和删除文件中的ACL项 25.6 读写注册表 25.6.1 注册表 25.6.2 .NET注册表类 25.6.3 SelfPlacingWindow示例 25.7 读写独立存储器 25.8 小结 第26章 .NET数据访问 26.1 ADO NET概述 26.1.1 命名空间 26.1.2 共享类 26.1.3 数据库特定的类 26.2 使用数据库连接 26.2.1 管理连接字符串 26.2.2 高效地使用连接 26.2.3 事务处理 26.3 命令 26.3.1 执行命令 26.3.2 调用存储过程 26.4 快速数据访问:数据读取器 26.5 管理数据和关系:DataSet类 26.5.1 数据表 26.5.2 数据列 26.5.3 数据关系 26.5.4 数据约束 26.6 XML模式:用XSD生成代码 26.7 填充数据集 26.7.1 用数据适配器来填充DataSet 26.7.2 从XML中给数据集填充数据 26.8 保存对数据集的修改 26.8.1 通过数据适配器进行更新 26.8.2 写入XML输出结果 26.9 使用ADO NET 26.9.1 分层开发 26.9.2 生成SQL Server的键 26.9.3 命名约定 26.10 小结 第27章 LINQ to SQL 27.1 LINQ to SQL和Visual Studio 2008 27.1.1 使用LINQ to SQL调用Products表——创建控制台应用程序 27.1.2 添加LINQ to SQL类 27.1.3 O/R设计器概述 27.1.4 创建Product对象 27.2 对象映射到LINQ对象上 27.2.1 DataContext对象 27.2.2 Table对象 27.3 不使用O/R设计器工作 27.3.1 创建自己的定制对象 27.3.2 用定制的对象和LINQ进行查询 27.3.3 用查询限制所调用的列 27.3.4 使用列名 27.3.5 创建自己的DataContext对象 27.4 定制对象和O/R设计器 27.5 查询数据库 27.5.1 使用查询表达式 27.5.2 查询表达式 27.5.3 使用表达式过滤 27.5.4 连接 27.5.5 组合数据项 27.6 存储过程 27.7 小结 第28章 处理XML 28.1 .NET支持的XML标准 28.2 System.Xml命名空间 28.3 使用System.Xml类 28.4 读写流格式的XML 28.4.1 使用 XmlReader类 28.4.2 使用XmlReader类进行验证 28.4.3 使用XmlWriter类 28.5 在.NET中使用DOM 28.6 使用XPathNavigator 28.6.1 System.Xml.XPath命名空间 28.6.2 System.Xml.Xsl命名空间 28.6.3 调试XSLT 28.7 XML和ADO NET 28.7.1 将ADO NET数据转换为XML文档 28.7.2 把XML文档转换为ADO NET数据 28.8 在XML中串行化对象 28.9 小结 第29章 LINQ to XML 29.1 LINQ to XML和.NET 3.5 29.1.1 创建XML文档的新对象 29.1.2 Visual Basic 2008开辟了另一条道路 29.1.3 命名空间和前缀 29.2 .NET Framework 3.5中的新XML对象 29.2.1 XDocument对象 29.2.2 XElement对象 29.2.3 XNamespace对象 29.2.4 XComment对象 29.2.5 XAttribute对象 29.3 使用LINQ查询XML文档 29.3.1 查询静态的XML文档 29.3.2 查询动态的XML文档 29.4 处理XML文档 29.4.1 读取XML文档 29.4.2 写入XML文档 29.5 使用LINQ to SQL和LINQto XML 29.5.1 建立LINQ to SQL组件 29.5.2 查询数据库,输出XML 29.6 小结 第30章 .NET编程和SQL Server 30.1 .NET运行库的主机 30.2 Microsoft.SqlServer.Server 30.3 用户定义的类型 30.3.1 创建UDT 30.3.2 使用UDT 30.3.3 在客户端代码中使用UDT 30.4 用户定义的合计函数 30.4.1 创建用户定义的合计函数 30.4.2 使用用户定义的合计函数 30.5 存储过程 30.5.1 创建存储过程 30.5.2 使用存储过程 30.6 用户定义的函数 30.6.1 创建用户定义的函数 30.6.2 使用用户定义的函数 30.7 触发器 30.7.1 创建触发器 30.7.2 使用触发器 30.8 XML数据类型 30.8.1 包含XML数据的表 30.8.2 读取XML值 30.8.3 数据的查询 30.8.4 XML数据修改语言(XML DML) 30.8.5 XML索引 30.8.6 强类型化的XML 30.9 小结 第Ⅴ部分 显示 第31章 Windows窗体 31.1 创建Windows窗体应用程序类层次结构 31.2 Control类 31.2.1 大小和位置 31.2.2 外观 31.2.3 用户交互操作 31.2.4 Windows功能 31.2.5 杂项功能 31.3 标准控件和组件 31.3.1 Button控件 31.3.2 CheckBox控件 31.3.3 RadioButton控件 31.3.4 ComboBox控件、ListBox控件和CheckedListBox控件 31.3.5 DateTimePicker控件 31.3.6 ErrorProvider组件 31.3.7 HelpProvider组件 31.3.8 ImageList组件 31.3.9 Label控件 31.3.10 ListView控件 31.3.11 PictureBox控件 31.3.12 ProgressBar控件 31.3.13 TextBox控件、RichTextBox控件与MaskedTextBox控件 31.3.14 Panel控件 31.3.15 FlowLayoutPanel和TableLayoutPanel控件 31.3.16 SplitContainer控件 31.3.17 TabControl控件和TabPages控件 31.3.18 ToolStrip控件 31.3.19 MenuStrip控件 31.3.20 ContextMenuStrip控件 31.3.21 ToolStripMenuItem控件 31.3.22 ToolStripManager类 31.3.23 ToolStripContainer控件 31.4 窗体 31.4.1 Form类 31.4.2 多文档界面 31.4.3 定制控件 31.5 小结 第32章 数据绑定 32.1 DataGridView控件 32.1.1 显示列表数据 32.1.2 数据源 32.2 DataGridView类的层次结构 32.3 数据绑定 32.3.1 简单的绑定 32.3.2 数据绑定对象 32.4 Visual Studio和数据访问 32.4.1 创建一个连接 32.4.2 选择数据 32.4.3 更新数据源 32.4.4 其他常见的要求 32.5 小结 第33章 使用GDI+绘图 33.1 理解绘图规则 33.1.1 GDI和GDI+ 33.1.2 绘制图形 33.1.3 使用OnPaint()绘制图形 33.1.4 使用剪切区域 33.2 测量坐标和区域 33.2.1 Point和PointF结构 33.2.2 Size和SizeF结构 33.2.3 Rectangle和RectangleF结构 33.2.4 Region 33.3 调试须知 33.4 绘制可滚动的窗口 33.5 世界、页面和设备坐标 33.6 颜色 33.6.1 红绿蓝(RGB)值 33.6.2 命名的颜色 33.6.3 图形显示模式和安全的调色板 33.6.4 安全调色板 33.7 画笔和钢笔 33.7.1 画笔 33.7.2 钢笔 33.8 绘制图形和线条 33.9 显示图像 33.10 处理图像时的问题 33.11 绘制文本 33.12 简单的文本示例 33.13 字体和字体系列 33.14 示例:枚举字体系列 33.15 编辑文本文档:CapsEditor示例 33.15.1 Invalidate()方法 33.15.2 计算项和文档的大小 33.15.3 OnPaint() 33.15.4 坐标转换 33.15.5 响应用户的输入 33.16 打印 33.17 小结 第34章 Windows Presentation Foundation 34.1 概述 34.1.1 XAML 34.1.2 设计人员和开发人员的合作 34.1.3 类层次结构 31.1.4 命名空间 34.2 形状 34.3 变换 34.4 笔刷 34.4.1 SolidColorBrush 34.4.2 LinearGradientBrush 34.4.3 RadialGradientBrush 34.4.4 DrawingBrush 34.4.5 ImageBrush 34.4.6 VisualBrush 34.5 控件 34.5.1 简单控件 34.5.2 内容控件 34.5.3 有标题的内容控件 34.5.4 项控件 34.5.5 带标题的项控件 34.6 布局 34.6.1 StackPanel 34.6.2 WrapPanel 34.6.3 Canvas 34.6.4 DockPanel 34.6.5 Grid 34.7 事件处理 34.8 样式、模板和资源 34.8.1 样式 34.8.2 资源 34.8.3 创建列表框的样式 34.9 小结 第35章 高级WPF 35.1 数据绑定 35.1.1 概述 35.1.2 用XAML绑定 35.1.3 简单对象的绑定 35.1.4 对象数据提供程序 35.1.5 列表绑定 35.1.6 绑定到XML上 35.1.7 绑定的验证 35.2 命令绑定 35.3 动画 35.3.1 时间线 35.3.2 触发器 35.3.3 故事板1 35.4 在WPF中添加3D特性 35.5 Windows窗体集成 35.5.1 Windows窗体中的WPF控件 35.5.2 WPF应用程序中的Windows窗体控件 35.6 WPF浏览器应用程序 35.7 小结 第36章 插件 36.1 System.AddIn体系结构 36.1.1 插件的问题 36.1.2 管道体系结构 36.1.3 发现 36.1.4 激活和隔离 36.1.5 合同 36.1.6 生存期 36.1.7 版本问题 36.2 插件示例 36.2.1 计算器合同 36.2.2 计算器插件视图 36.2.3 计算器插件适配器 36.2.4 计算器插件 36.2.5 计算器主机视图 36.2.6 计算机主机适配器 36.2.7 计算器主机 36.2.8 其他插件 36.3 小结 第37章 ASP NET页面 37.1 ASP NET概述 37.2 ASP NET Web窗体 37.2.1 ASP NET代码模型 37.2.2 ASP NET服务器控件 37.3 ADO NET和数据绑定 37.3.1 更新会议登记应用程序 37.3.2 数据绑定的更多内容 37.4 应用程序配置 37.5 小结 第38章 ASP NET开发 38.1 用户控件和定制控件 38.1.1 用户控件 38.1.2 PCSDemoSite中的用户控件 38.1.3 定制控件 38.2 Master页面 38.2.1 在Web页面中访问Master页面 38.2.2 嵌套的Master页面 38.2.3 PCSDemoSite中的Master页面 38.3 站点导航 38.4 安全性 38.4.1 使用安全向导添加Forms身份验证功能 38.4.2 实现登录系统 38.4.3 Web 登录服务器控件 38.4.4 保护目录 38.4.5 PCSDemoSite中的安全性 38.5 主题 38.5.1 把主题应用于页面 38.5.2 定义主题 38.5.3 PCSDemoSite中的主题 38.6 Web Parts 38.6.1 Web Parts应用程序组件 38.6.2 Web Parts示例 38.7 小结 第39章 ASP NET AJAX 39.1 Ajax的概念 39.2 ASP NET AJAX 39.2.1 核心功能 39.2.2 ASP NET AJAX Control Toolkit 39.3 使用ASP NET AJAX 39.3.1 ASP NET AJAX网站示例 39.3.2 支持ASP NET AJAX的网站配置 39.3.3 添加ASP NET AJAX功能 39.3.4 使用AJAX库 39.4 小结 第40章 Visual Studio Tools for Office 40.1 VSTO概述 40.1.1 项目类型 40.1.2 项目特性 40.2 VSTO基础 40.2.1 Office对象模型 40.2.2 VSTO命名空间 40.2.3 主机项和主机控件 40.2.4 基本的VSTO项目结构 40.2.5 Globals类 40.2.6 事件处理 40.3 建立VSTO解决方案 40.3.1 管理应用程序级插件 40.3.2 与应用程序和文档交互操作 40.3.3 UI的定制 40.4 示例应用程序 40.5 VBA交互操作性 40.6 小结 第Ⅵ部分 通信 第41章 访问Internet 41.1 WebClient类 41.1.1 下载文件 41.1.2 基本的Web客户示例 41.1.3 上传文件 41.2 WebRequest类和WebResponse类 41.3 把输出结果显示为HTML页面 41.3.1 在应用程序中进行简单的Web浏览 41.3.2 启动Internet Explorer实例 41.3.3 给应用程序提供更多的IE类型特性 41.3.4 使用WebBrowser控件打印 41.3.5 显示请求页面的代码 41.3.6 WebRequest和WebResponse的层次结构 41.4 实用工具类 41.4.1 URI 41.4.2 IP地址和DNS名称 41.5 较低层的协议 41.6 小结 第42章 Windows Communication Foundation 42.1 WCF概述 42.1.1 SOAP 42.1.2 WSDL 42.1.3 JSON 42.2 简单的服务和客户 42.2.1 服务合同 42.2.2 服务的实现 42.2.3 WCF服务主机和WCF测试客户机 42.2.4 定制服务主机 42.2.5 WCF客户程序 42.2.6 诊断 42.3 合同 42.3.1 数据合同 42.3.2 版本问题 42.3.3 服务合同 42.3.4 消息合同 42.4 服务的实现 42.5 绑定 42.6 主机 42.6.1 定制主机 42.6.2 WAS主机 42.7 客户程序 42.8 双向通信 42.9 小结 第43章 Windows Workflow Foundation 43.1 Hello World示例 43.2 活动 43.2.1 IfElseActivity 43.2.2 ParallelActivity 43.2.3 CallExternalMethodActivity 43.2.4 DelayActivity 41.2.5 ListenActivity 43.2.6 活动的执行模型 43.3 定制的活动 43.3.1 活动的有效性验证 43.3.2 主题和设计器 43.3.3 ActivityToolboxItem和图标 43.3.4 定制的复合活动 43.4 工作流 43.4.1 系列工作流 43.4.2 状态机工作流 43.4.3 给工作流传送参数 43.4.4 从工作流中返回结果 43.4.5 将参数绑定到活动上 43.5 工作流运行库 43.6 工作流服务 43.6.1 持续服务 43.6.2 跟踪服务 43.6.3 定制服务 43.7 与WCF集成 43.8 保存工作流 43.9 工作流设计器 43.10 小结 第44章 Enterprise Services 44.1 概述 44.1.1 Enterprise Services简史 44.1.2 使用Enterprise Services的场合 44.1.3 环境 44.1.4 自动的事务处理 44.1.5 分布式事务处理 44.1.6 对象池 44.1.7 基于角色的安全性 44.1.8 排队的组件 44.1.9 松散藕合的事件 44.2 创建简单的COM+应用程序 44.2.1 类ServicedComponent 44.2.2 标记程序集 44.2.3 程序集的属性 44.2.4 创建组件 44.3 部署 44.3.1 自动部署 44.3.2 手工部署 44.3.3 创建安装软件包 44.4 Component Services浏览器 44.5 客户应用程序 44.6 事务处理 44.6.1 事务处理的属性 44.6.2 事务处理的结果 44.7 示例应用程序 44.7.1 实体类 44.7.2 OrderControl组件 44.7.3 OrderData组件 44.7.4 OrderLineData组件 44.7.5 客户应用程序 44.8 集成WCF和Enterprise Services 44.8.1 WCF服务Façade 44.8.2 客户程序 44.9 小结 第45章 消息队列 45.1 概述 45.1.1 使用Message Queuing的场合 45.1.2 Message Queuing特性 45.2 Message Queuing产品 45.3 Message Queuing结构 45.3.1 消息 45.3.2 消息队列 45.4 Message Queuing管理工具 45.4.1 创建消息队列 45.4.2 消息队列属性 45.5 Message Queuing的编程实现 45.5.1 创建消息队列 45.5.2 查找队列 45.5.3 打开已知的队列 45.5.4 发送消息 45.5.5 接收消息 45.6 课程订单应用程序 45.6.1 课程订单类库 45.6.2 课程订单消息发送程序 45.6.3 发送优先级和可恢复的消息 45.6.4 课程订单消息接收程序 45.7 接收结果 45.7.1 确认队列 45.7.2 响应队列 45.8 事务队列 45.9 消息队列和WCF 45.9.1 带数据合同的实体类 45.9.2 WCF服务合同 45.9.3 WCF消息接收程序 45.9.4 WCF消息发送程序 45.10 消息队列的安装 45.11 小结 第46章 目录服务 46.1 Active Directory的体系结构 46.1.1 特性 46.1.2 Active Directory的概念 46.1.3 Active Directory数据的特性 46.1.4 模式 46.2 Active Directory的管理工具 46.2.1 Active Directory Users and Computers工具 46.2.2 ADSI Edit工具 46.3 Active Directory编程 46.3.1 System.DirectoryServices命名空间中的类 46.3.2 绑定 46.3.3 获取目录项 46.3.4 对象集合 46.3.5 缓存 46.3.6 创建新对象 46.3.7 更新目录项 46.3.8 访问内部的ADSI对象 46.3.9 在Active Directory中搜索 46.4 搜索用户对象 46.4.1 用户界面 46.4.2 获取模式命名环境 46.4.3 获取User类的属性名 46.4.4 搜索用户对象 46.5 账户管理 46.5.1 显示用户信息 46.5.2 创建用户 46.5.3 重置密码 46.5.4 创建组 46.5.5 在组中添加用户 46.5.6 查找用户 46.6 DSML 46.6.1 命名空间System.Directory-Services.Protocols中的类 46.6.2 用DSML搜索Active Directory对象 46.7 小结 第47章 对等网络 47.1 P2P概述 47.1.1 客户机-服务器体系结构 47.1.2 P2P体系结构 47.1.3 P2P体系结构的挑战 47.1.4 P2P术语 47.1.5 P2P解决方案 47.2 Microsoft Windows Peer-to-Peer Networking 47.2.1 Peer Name Resolution Protocol(PNRP) 47.2.2 People Near Me 47.3 建立P2P应用程序 47.3.1 System Net.PeerToPeer 47.3.2 System Net.PeerToPeer.Collaboration 47.4 小结 第48章 Syndication 48.1 System.ServiceModel.Syndication命名空间概述 48.2 Syndication阅读器 48.3 提供SyndicationFeed 48.4 小结 第Ⅶ部分 附录 附录A ADO NET Entity Framework 附录B C#、Visual Basic和C++/CLI 附录C Windows Vista和Windows Server 2008 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。