C#高级编程(第8版)

C#高级编程(第8版)
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] , , ,
2013-10
版次: 8
ISBN: 9787302334118
定价: 148.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 1548页
字数: 2663千字
正文语种: 简体中文
原版书名: Professional C# 2012 and .NET 4.5
87人买过
  •   C#经典名著,连续畅销十五年,累计销售超20万册,引领无数读者进入程序开发殿堂
      版更新至C#2012和.NET4.5
      2009年度/2011年度全行业优秀畅销书,深受广大读者喜爱
      2008年度优秀技术图书!
      2007年度最畅销的C#销售图书!
      2006年最受读者喜爱的十大技术开发类图书!
      2005年最的十大IT图书之C#2010版

    本书版已经出版《C#高级编程(第9版):C#5.0&.NET4.5.1》

    更多好书推荐,欢迎进入清华大学出版社京东品牌店:   《C#高级编程(第8版)》是C#2012和.NET4.5高级技术的资源,旨在帮助读者更新、提高用C#2012和.NET4.5编写Windows应用程序、Web应用程序、Windows8样式应用程序的技巧。本书的作者专家团队首先介绍了C#的基础知识,之后全面探讨了该语言和架构中的新增功能,以及新的测试驱动的开发和并发编程特性。《C#高级编程(第8版)》提供了学习C#2012和.NET4.5所需的所有知识,使读者可以限度地发挥出这些动态技术的潜能。
      主要内容:
      介绍富有挑战性的.NET特性,包括LINQ、LINQtoEquities、LINQtoXML、WCF、WPF、Workflow和泛型
      详细论述了异步编程、模式、基础和方法
      研究了Windows8开发的新选项和接口、WinRT和Windows8样式应用程序
      阐述了文件和注册表的操作
      介绍了WPF编程,包括样式、数据驱动的应用程序和文档、ASP.NETWebForms以及ASP.NETMVC
    第Ⅰ部分 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.4.4 并行编程
    1.4.5 异步编程
    1.5 .NET Framework类
    1.6 名称空间
    1.7 用C#创建.NET应用程序
    1.7.1 创建ASP.NET应用程序
    1.7.2 使用WPF
    1.7.3 Windows 8应用程序
    1.7.4 Windows服务
    1.7.5 WCF
    1.7.6 Windows WF
    1.8 C#在.NET企业体系结构中的作用
    1.9 小结

    第2章 核心C#
    2.1 C#基础
    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.7.1 using语句
    2.7.2 名称空间的别名
    2.8 Main()方法
    2.8.1 多个Main()方法
    2.8.2 给Main()方法传递参数
    2.9 有关编译C#文件的更多内容
    2.10 控制台I/O
    2.11 使用注释
    2.11.1 源文件中的内部注释
    2.11.2 XML文档
    2.12 C#预处理器指令
    2.12.1 #define和 #undef
    2.12.2 #if、#elif、#else和#endif
    2.12.3 #warning和 # error
    2.12.4 #region和#endregion
    2.12.5 #line
    2.12.6 #pragma
    2.13 C#编程规则
    2.13.1 关于标识符的规则
    2.13.2 用法约定
    2.14 小结

    第3章 对象和类型
    3.1 创建及使用类
    3.2 类和结构
    3.3 类
    3.3.1 数据成员
    3.3.2 函数成员
    3.3.3 只读字段
    3.4 匿名类型
    3.5 结构
    3.5.1 结构是值类型
    3.5.2 结构和继承
    3.5.3 结构的构造函数
    3.6 弱引用
    3.7 部分类
    3.8 静态类
    3.9 Object类
    3.9.1 System.Object()方法
    3.9.2 ToString()方法
    3.10 扩展方法
    3.11 小结

    第4章 继承
    4.1 继承
    4.2 继承的类型
    4.2.1 实现继承和接口继承
    4.2.2 多重继承
    4.2.3 结构和类
    4.3 实现继承
    4.3.1 虚方法
    4.3.2 隐藏方法
    4.3.3 调用函数的基类版本
    4.3.4 抽象类和抽象函数
    4.3.5 密封类和密封方法
    4.3.6 派生类的构造函数
    4.4 修饰符
    4.4.1 可见性修饰符
    4.4.2 其他修饰符
    4.5 接口
    4.5.1 定义和实现接口
    4.5.2 派生的接口
    4.6 小结

    第5章 泛型
    5.1 泛型概述
    5.1.1 性能
    5.1.2 类型安全
    5.1.3 二进制代码的重用
    5.1.4 代码的扩展
    5.1.5 命名约定
    5.2 创建泛型类
    5.3 泛型类的功能
    5.3.1 默认值
    5.3.2 约束
    5.3.3 继承
    5.3.4 静态成员
    5.4 泛型接口
    5.4.1 协变和抗变
    5.4.2 泛型接口的协变
    5.4.3 泛型接口的抗变
    5.5 泛型结构
    5.6 泛型方法
    5.6.1 泛型方法示例
    5.6.2 带约束的泛型方法
    5.6.3 带委托的泛型方法
    5.6.4 泛型方法规范
    5.7 小结

    第6章 数组
    6.1 同一类型和不同类型的多个对象
    6.2 简单数组
    6.2.1 数组的声明
    6.2.2 数组的初始化
    6.2.3 访问数组元素
    6.2.4 使用引用类型
    6.3 多维数组
    6.4 锯齿数组
    6.5 Array类
    6.5.1 创建数组
    6.5.2 复制数组
    6.5.3 排序
    6.6 数组作为参数
    6.6.1 数组协变
    6.6.2 ArraySegment
    6.7 枚举
    6.7.1 IEnumerator接口
    6.7.2 foreach语句
    6.7.3 yield语句
    6.8 元组
    6.9 结构比较
    6.10 小结

    第7章 运算符和类型强制转换
    7.1 运算符和类型转换
    7.2 运算符
    7.2.1 运算符的简化操作
    7.2.2 运算符的优先级
    7.3 类型的安全性
    7.3.1 类型转换
    7.3.2 装箱和拆箱
    7.4 比较对象的相等性
    7.4.1 比较引用类型的相等性
    7.4.2 比较值类型的相等性
    7.5 运算符重载
    7.5.1 运算符的工作方式
    7.5.2 运算符重载的示例:Vector结构
    7.6 用户定义的类型强制转换
    7.6.1 实现用户定义的类型强制转换
    7.6.2 多重类型强制转换
    7.7 小结

    第8章 委托、Lambda表达式
    和事件
    8.1 引用方法
    8.2 委托
    8.2.1 声明委托
    8.2.2 使用委托
    8.2.3 简单的委托示例
    8.2.4 Action和Func委托
    8.2.5 BubbleSorter示例
    8.2.6 多播委托
    8.2.7 匿名方法
    8.3 Lambda表达式
    8.3.1 参数
    8.3.2 多行代码
    8.3.3 闭包
    8.3.4 使用foreach语句的闭包
    8.4 事件
    8.4.1 事件发布程序
    8.4.2 事件侦听器
    8.4.3 弱事件
    8.5 小结

    第9章 字符串和正则表达式
    9.1 System.String类
    9.1.1 创建字符串
    9.1.2 StringBuilder成员
    9.1.3 格式字符串
    9.2 正则表达式
    9.2.1 正则表达式概述
    9.2.2 RegularExpressionsPlayaround示例
    9.2.3 显示结果
    9.2.4 匹配、组合和捕获
    9.3 小结

    第10章 集合
    10.1 概述
    10.2 集合接口和类型
    10.3 列表
    10.3.1 创建列表
    10.3.2 只读集合
    10.4 队列
    10.5 栈
    10.6 链表
    10.7 有序列表
    10.8 字典
    10.8.1 键的类型
    10.8.2 字典示例
    10.8.3 Lookup类
    10.8.4 有序字典
    10.9 集
    10.10 可观察的集合
    10.11 位数组
    10.11.1 BitArray类
    10.11.2 BitVector32结构
    10.12 并发集合
    10.12.1 创建管道
    10.12.2 使用Blocking-Collection
    10.12.3 使用Concurrent-Dictionary
    10.12.4 完成管道
    10.13 性能
    10.14 小结

    第11章 LINQ
    11.1 LINQ概述
    11.1.1 列表和实体
    11.1.2 LINQ查询
    11.1.3 扩展方法
    11.1.4 推迟查询的执行
    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.2.14 聚合操作符
    11.2.15 转换操作符
    11.2.16 生成操作符
    11.3 并行LINQ
    11.3.1 并行查询
    11.3.2 分区器
    11.3.3 取消
    11.4 表达式树
    11.5 LINQ提供程序
    11.6 小结

    第12章 动态语言扩展
    12.1 DLR
    12.2 dynamic类型
    12.3 包含DLR ScriptRuntime
    12.4 DynamicObject和ExpandoObject
    12.4.1 DynamicObject
    12.4.2 ExpandoObject
    12.5 小结

    第13章 异步编程
    13.1 异步编程的重要性
    13.2 异步模式
    13.2.1 同步调用
    13.2.2 异步模式
    13.2.3 基于事件的异步模式
    13.2.4 基于任务的异步模式
    13.3 异步编程的基础
    13.3.1 创建任务
    13.3.2 调用异步方法
    13.3.3 延续任务
    13.3.4 同步上下文
    13.3.5 使用多个异步方法
    13.3.6 转换异步模式
    13.4 错误处理
    13.4.1 异步方法的异常处理
    13.4.2 多个异步方法的异常处理
    13.4.3 AggregateException类
    13.5 取消
    13.5.1 开始取消任务
    13.5.2 使用框架特性取消任务
    13.5.3 取消自定义任务
    13.6 小结

    第14章 内存管理和指针
    14.1 内存管理
    14.2 后台内存管理
    14.2.1 值数据类型
    14.2.2 引用数据类型
    14.2.3 垃圾回收
    14.3 释放非托管的资源
    14.3.1 析构函数
    14.3.2 IDisposable接口
    14.3.3 实现IDisposable接口和析构函数
    14.4 不安全的代码
    14.4.1 用指针直接访问内存
    14.4.2 指针示例:PointerPlayground
    14.4.3 使用指针优化性能
    14.5 小结

    第15章 反射
    15.1 在运行期间处理和检查代码
    15.2 自定义特性
    15.2.1 编写自定义特性
    15.2.2 自定义特性示例:WhatsNewAttributes
    15.3 反射
    15.3.1 System.Type类
    15.3.2 TypeView示例
    15.3.3 Assembly类
    15.3.4 完成WhatsNewAttributes示例
    15.4 小结

    第16章 错误和异常
    16.1 简介
    16.2 异常类
    16.3 捕获异常
    16.3.1 实现多个catch块
    16.3.2 在其他代码中捕获异常
    16.3.3 System.Exception属性
    16.3.4 没有处理异常时所发生的情况
    16.3.5 嵌套的 try块
    16.4 用户定义的异常类
    16.4.1 捕获用户定义的异常
    16.4.2 抛出用户定义的异常
    16.4.3 定义用户定义的异常类
    16.5 调用者信息
    16.6 小结

    第Ⅱ部分 Visual Studio

    第17章 Visual Studio 2012
    17.1 用Visual Studio 2012进行工作
    17.1.1 项目文件的改进
    17.1.2 Visual Studio的版本
    17.1.3 Visual Studio设置
    17.2 创建项目
    17.2.1 面向多个版本的.NET Framework
    17.2.2 选择项目类型
    17.3 浏览并编写项目
    17.3.1 Solution Explorer
    17.3.2 用代码编辑器进行工作
    17.3.3 学习和理解其他窗口
    17.3.4 排列窗口
    17.4 构建项目
    17.4.1 构建、编译和生成
    17.4.2 调试版本和发布版本
    17.4.3 选择配置
    17.4.4 编辑配置
    17.5 调试代码
    17.5.1 设置断点
    17.5.2 使用数据提示和调试器可视化工具
    17.5.3 监视和修改变量
    17.5.4 异常
    17.5.5 多线程
    17.5.6 IntelliTrace
    17.6 重构工具
    17.7 体系结构工具
    17.7.1 依赖项关系图
    17.7.2 层关系图
    17.8 分析应用程序
    17.8.1 序列图
    17.8.2 探查器
    17.8.3 Concurrency Visualizer
    17.8.4 Code Analysis
    17.8.5 Code Metrics
    17.9 单元测试
    17.9.1 创建单元测试
    17.9.2 运行单元测试
    17.9.3 预期异常
    17.9.4 测试全部代码路径
    17.9.5 外部依赖
    17.9.6 Fakes Framework
    17.10 Windows 8、WCF、WF等
    17.10.1 使用Visual Studio 2012生成WCF应用程序
    17.10.2 使用Visual Studio 2012生成WF应用程序
    17.10.3 使用Visual Studio 2012生成Windows Store应用程序
    17.11 小结

    第18章 部署
    18.1 部署是应用程序生命周期的一部分
    18.2 部署的规划
    18.2.1 部署选项
    18.2.2 部署要求
    18.2.3 部署.NET运行库
    18.3 传统的部署选项
    18.3.1 xcopy部署
    18.3.2 xcopy和Web应用程序
    18.3.3 Windows Installer
    18.4 ClickOnce
    18.4.1 ClickOnce操作
    18.4.2 发布ClickOnce应用程序
    18.4.3 ClickOnce设置
    18.4.4 ClickOnce文件的应用程序缓存
    18.4.5 应用程序的安装
    18.4.6 ClickOnce部署API
    18.5 Web部署
    18.5.1 Web应用程序
    18.5.2 配置文件
    18.5.3 创建Web Deploy包
    18.6 Windows 8应用程序
    18.6.1 创建应用程序包
    18.6.2 Windows App Certification Kit
    18.6.3 旁加载
    18.6.4 Windows部署API
    18.7 小结

    第Ⅲ部分 基 础

    第19章 程序集
    19.1 程序集的含义
    19.1.1 程序集的功能
    19.1.2 程序集的结构
    19.1.3 程序集清单
    19.1.4 名称空间、程序集和组件
    19.1.5 私有程序集和共享程序集
    19.1.6 附属程序集
    19.1.7 查看程序集
    19.2 构建程序集
    19.2.1 创建模块和程序集
    19.2.2 程序集的特性
    19.2.3 创建和动态加载程序集
    19.3 应用程序域
    19.4 共享程序集
    19.4.1 强名
    19.4.2 使用强名获得完整性
    19.4.3 全局程序集缓存
    19.4.4 创建共享程序集
    19.4.5 创建强名
    19.4.6 安装共享程序集
    19.4.7 使用共享程序集
    19.4.8 程序集的延迟签名
    19.4.9 引用
    19.4.10 本机映像生成器
    19.5 配置.NET应用程序
    19.5.1 配置类别
    19.5.2 绑定程序集
    19.6 版本问题
    19.6.1 版本号
    19.6.2 通过编程方式获取版本
    19.6.3 绑定到程序集版本
    19.6.4 发行者策略文件
    19.6.5 运行库的版本
    19.7 在不同的技术之间共享程序集
    19.7.1 共享源代码
    19.7.2 可移植类库
    19.8 小结

    第20章 诊断
    20.1 诊断概述
    20.2 代码协定
    20.2.1 前提条件
    20.2.2 后置条件
    20.2.3 不变量
    20.2.4 纯粹性
    20.2.5 接口的协定
    20.2.6 简写
    20.2.7 协定和遗留代码
    20.3 跟踪
    20.3.1 跟踪源
    20.3.2 跟踪开关
    20.3.3 跟踪侦听器
    20.3.4 筛选器
    20.3.5 相关性
    20.3.6 使用ETW进行跟踪
    20.4 事件日志
    20.4.1 事件日志体系结构
    20.4.2 事件日志类
    20.4.3 创建事件源
    20.4.4 写入事件日志
    20.4.5 资源文件
    20.5 性能监视
    20.5.1 性能监视类
    20.5.2 性能计数器生成器
    20.5.3 添加PerformanceCounter组件
    20.5.4 perfmon.exe
    20.6 小结

    第21章 任务、线程和同步
    21.1 概述
    21.2 Parallel类
    21.2.1 用Parallel.For()方法循环
    21.2.2 使用Parallel.ForEach()方法循环
    21.2.3 通过Parallel.Invoke()方法调用多个方法
    21.3 任务
    21.3.1 启动任务
    21.3.2 Future-- 任务的结果
    21.3.3 连续的任务
    21.3.4 任务层次结构
    21.4 取消架构
    21.4.1 Parallel.For()方法的取消
    21.4.2 任务的取消
    21.5 线程池
    21.6 Thread类
    21.6.1 给线程传递数据
    21.6.2 后台线程
    21.6.3 线程的优先级
    21.6.4 控制线程
    21.7 线程问题
    21.7.1 争用条件
    21.7.2 死锁
    21.8 同步
    21.8.1 lock语句和线程安全
    21.8.2 Interlocked类
    21.8.3 Monitor类
    21.8.4 SpinLock结构
    21.8.5 WaitHandle基类
    21.8.6 Mutex类
    21.8.7 Semaphore类
    21.8.8 Events类
    21.8.9 Barrier类
    21.8.10 ReaderWriterLockSlim类
    21.9 Timer类
    21.10 数据流
    21.10.1 使用动作块
    21.10.2 源和目标数据块
    21.10.3 连接块
    21.11 小结

    第22章 安全性
    22.1 概述
    22.2 身份验证和授权
    22.2.1 标识和Principal
    22.2.2 角色
    22.2.3 声明基于角色的安全性
    22.2.4 声称
    22.2.5 客户端应用程序服务
    22.3 加密
    22.3.1 签名
    22.3.2 交换密钥和安全传输
    22.4 资源的访问控制
    22.5 代码访问安全性
    22.5.1
    第2级安全透明性
    22.5.2 权限
    22.6 使用证书发布代码
    22.7 小结

    第23章 互操作
    23.1 .NET和COM技术
    23.1.1 元数据
    23.1.2 释放内存
    23.1.3 接口
    23.1.4 方法绑定
    23.1.5 数据类型
    23.1.6 注册
    23.1.7 线程
    23.1.8 错误处理
    23.1.9 事件
    23.1.10 封送
    23.2 在.NET客户端中使用COM组件
    23.2.1 创建一个COM组件
    23.2.2 创建运行库可调用包装
    23.2.3 使用RCW
    23.2.4 通过动态语言扩展使用COM服务
    23.2.5 线程问题
    23.2.6 添加连接点
    23.3 在COM客户端中使用.NET组件
    23.3.1 COM可调用包装
    23.3.2 创建.NET组件
    23.3.3 创建一个类型库
    23.3.4 COM互操作特性
    23.3.5 COM注册
    23.3.6 创建COM客户端应用程序
    23.3.7 添加连接点
    23.3.8 使用sink对象创建客户端
    23.3.9 平台调用
    23.4 小结

    第24章 文件和注册表操作
    24.1 文件和注册表
    24.2 管理文件系统
    24.2.1 表示文件和文件夹的.NET类
    24.2.2 Path类
    24.2.3 FileProperties示例
    24.3 移动、复制和删除文件
    24.3.1 FilePropertiesAndMovement示例
    24.3.2 FilePropertiesAndMovement示例的代码
    24.4 读写文件
    24.4.1 读取文件
    24.4.2 写入文件
    24.4.3 流
    24.4.4 缓存的流
    24.4.5 使用FileStream类读写二进制文件
    24.4.6 读写文本文件
    24.5 映射内存的文件
    24.6 读取驱动器信息
    24.7 文件的安全性
    24.7.1 从文件中读取ACL
    24.7.2 从目录中读取ACL
    24.7.3 添加和删除文件中的ACL项
    24.8 读写注册表
    24.8.1 注册表
    24.8.2 .NET注册表类
    24.9 读写独立存储器
    24.10 小结

    第25章 事务处理
    25.1 简介
    25.2 概述
    25.2.1 事务处理阶段
    25.2.2 ACID属性
    25.3 数据库和实体类
    25.4 传统的事务
    25.4.1 ADO.NET事务
    25.4.2 System.Enterprise-Services
    25.5 System.Transactions
    25.5.1 可提交的事务
    25.5.2 事务处理的升级
    25.5.3 依赖事务
    25.5.4 环境事务
    25.6 隔离级别
    25.7 自定义资源管理器
    25.8 文件系统事务
    25.9 小结

    第26章 网络
    26.1 网络
    26.2 WebClient类
    26.2.1 下载文件
    26.2.2 基本的WebClient示例
    26.2.3 上传文件
    26.3 WebRequest类和WebResponse类
    26.3.1 身份验证
    26.3.2 使用代理
    26.3.3 异步页面请求
    26.4 把输出结果显示为HTML页面
    26.4.1 从应用程序中进行简单的Web浏览
    26.4.2 启动Internet Explorer实例
    26.4.3 给应用程序提供更多IE类型的功能
    26.4.4 使用WebBrowser控件打印
    26.4.5 显示所请求页面的代码
    26.4.6 WebRequest类和WebResponse类的层次结构
    26.5 实用工具类
    26.5.1 URI
    26.5.2 IP地址和DNS名称
    26.6 较低层的协议
    26.6.1 使用SmtpClient
    26.6.2 使用TCP类
    26.6.3 TcpSend和TcpReceive示例
    26.6.4 TCP和UDP
    26.6.5 UDP类
    26.6.6 Socket类
    26.6.7 WebSocket
    26.7 小结

    第27章 Windows服务
    27.1 Windows服务
    27.2 Windows服务的体系结构
    27.2.1 服务程序
    27.2.2 服务控制程序
    27.2.3 服务配置程序
    27.2.4 Windows服务的类
    27.3 创建Windows服务程序
    27.3.1 创建服务的核心功能
    27.3.2 QuoteClient示例
    27.3.3 Windows服务程序
    27.3.4 线程化和服务
    27.3.5 服务的安装
    27.3.6 安装程序
    27.4 Windows服务的监控和控制
    27.4.1 MMC管理单元
    27.4.2 net.exe实用程序
    27.4.3 sc.exe实用程序
    27.4.4 Visual Studio Server Explorer
    27.4.5 编写自定义ServiceController类
    27.5 故障排除和事件日志
    27.6 小结

    第28章 本地化
    28.1 全球市场
    28.2 System.Globalization名称空间
    28.2.1 Unicode问题
    28.2.2 区域性和区域
    28.2.3 使用区域性
    28.2.4 排序
    28.3 资源
    28.3.1 创建资源文件
    28.3.2 资源文件生成器
    28.3.3 ResourceWriter
    28.3.4 使用资源文件
    28.3.5 System.Resources名称空间
    28.4 使用Visual Studio的Windows Forms本地化
    28.4.1 通过编程方式修改区域性
    28.4.2 使用自定义资源消息
    28.4.3 资源的自动回退
    28.4.4 外包翻译
    28.5 ASP.NET Web Forms的本地化
    28.6 用WPF本地化
    28.6.1 用于WPF的.NET资源
    28.6.2 XAML资源字典
    28.7 自定义资源读取器
    28.7.1 创建DatabaseResource- Reader类
    28.7.2 创建DatabaseResource-Set类
    28.7.3 创建DatabaseResource-Manager类
    28.7.4 DatabaseResourceReader的客户端应用程序
    28.8 创建自定义区域性
    28.9 用Windows Store应用程序进行本地化
    28.9.1 使用资源
    28.9.2 使用多语言应用程序工具集进行本地化
    28.10 小结

    第29章 核心XAML
    29.1 XAML的作用
    29.2 概述
    29.2.1 元素如何映射到.NET对象上
    29.2.2 使用自定义.NET类
    29.2.3 把属性用作特性
    29.2.4 把属性用作元素
    29.2.5 基本的.NET类型
    29.2.6 使用集合和XAML
    29.2.7 用XAML代码调用构造函数
    29.3 依赖属性
    29.3.1 创建依赖属性
    29.3.2 强制值回调
    29.3.3 值变更回调和事件
    29.3.4 事件的冒泡和隧道
    29.4 附加属性
    29.5 标记扩展
    29.6 创建自定义标记扩展
    29.7 XAML定义的标记扩展
    29.8 读写XAML
    29.9 小结

    第30章 Managed Extensibility Framework
    30.1 概述
    30.2 MEF的体系结构
    30.2.1 使用属性的MEF
    30.2.2 基于约定的部件注册
    30.3 定义协定
    30.4 导出部件
    30.4.1 创建部件
    30.4.2 导出属性和方法
    30.4.3 导出元数据
    30.4.4 使用元数据进行惰性加载
    30.5 导入部件
    30.5.1 导入连接
    30.5.2 部件的惰性加载
    30.5.3 用惰性实例化的部件读取元数据
    30.6 容器和出口提供程序
    30.7 类别
    30.8 小结

    第31章 Windows运行库
    31.1 概述
    31.1.1 .NET与Windows运行库的比较
    31.1.2 名称空间
    31.1.3 元数据
    31.1.4 语言投射
    31.1.5 Windows运行库中的类型
    31.2 Windows运行库组件
    31.2.1 集合
    31.2.2 流
    31.2.3 委托与事件
    31.2.4 异步操作
    31.3 Windows 8应用程序
    31.4 Windows 8应用程序的生命周期
    31.4.1 Windows 8应用程序的执行状态
    31.4.2 SuspensionManager
    31.4.3 导航状态
    31.4.4 测试暂停
    31.4.5 页面状态
    31.5 Windows 8应用程序的设置
    31.6 摄像头功能
    31.7 小结

    第Ⅳ部分 数 据

    第32章 核心ADO.NET
    32.1 ADO.NET概述
    32.1.1 名称空间
    32.1.2 共享类
    32.1.3 数据库专用类
    32.2 使用数据库连接
    32.2.1 管理连接字符串
    32.2.2 高效地使用连接
    32.2.3 事务
    32.3 命令
    32.3.1 执行命令
    32.3.2 调用存储过程
    32.4 快速数据访问:数据读取器
    32.5 异步数据访问:使用Task和await
    32.6 管理数据和关系:DataSet类
    32.6.1 数据表
    32.6.2 数据列
    32.6.3 数据关系
    32.6.4 数据约束
    32.7 XML架构:用XSD生成代码
    32.8 填充DataSet类
    32.8.1 用数据适配器填充DataSet
    32.8.2 从XML中填充DataSet类
    32.9 持久化DataSet类的修改
    32.9.1 通过数据适配器进行更新
    32.9.2 写入XML输出结果
    32.10 使用ADO.NET
    32.10.1 分层开发
    32.10.2 生成SQL Server的键
    32.10.3 命名约定
    32.11 小结

    第33章 ADO.NET Entity Framework
    33.1 用Entity Framework编程
    33.2 Entity Framework映射
    33.2.1 逻辑层
    33.2.2 概念层
    33.2.3 映射层
    33.2.4 连接字符串
    33.3 实体
    33.4 对象上下文
    33.5 关系
    33.5.1 一个层次结构一个表
    33.5.2 一种类型一个表
    33.5.3 懒惰加载、延迟加载和预先加载
    33.6 查询数据
    33.6.1 Entity SQL
    33.6.2 对象查询
    33.6.3 LINQ to Entities
    33.7 把数据写入数据库
    33.7.1 对象跟踪
    33.7.2 改变信息
    33.7.3 附加和分离实体
    33.7.4 存储实体的变化
    33.8 使用POCO对象
    33.8.1 定义实体类型
    33.8.2 创建数据上下文
    33.8.3 查询和更新
    33.9 使用Code First编程模型
    33.9.1 定义实体类型
    33.9.2 创建数据上下文
    33.9.3 创建数据库,存储实体
    33.9.4 数据库
    33.9.5 查询数据
    33.9.6 定制数据库的生成
    33.10 小结

    第34章 处理XML
    34.1 XML
    34.2 .NET支持的XML标准
    34.3 System.Xml名称空间
    34.4 使用System.Xml类
    34.5 读写流格式的XML
    34.5.1 使用 XmlReader类
    34.5.2 使用XmlReader类进行验证
    34.5.3 使用XmlWriter类
    34.6 在.NET中使用DOM
    34.7 使用XPathNavigator类
    34.7.1 System.Xml.XPath名称空间
    34.7.2 System.Xml.Xsl名称空间
    34.7.3 调试XSLT
    34.8 XML和ADO.NET
    34.8.1 将ADO.NET数据转换为XML文档
    34.8.2 把XML文档转换为ADO.NET数据
    34.9 在XML中序列化对象
    34.10 LINQ to XML和.NET
    34.11 使用不同的XML对象
    34.11.1 XDocument对象
    34.11.2 XElement对象
    34.11.3 XNamespace对象
    34.11.4 XComment对象
    34.11.5 XAttribute对象
    34.12 使用LINQ查询XML文档
    34.12.1 查询静态的XML文档
    34.12.2 查询动态的XML文档
    34.13 XML文档的更多查询技术
    34.13.1 读取XML文档
    34.13.2 写入XML文档
    34.14 小结

    第Ⅴ部分 显 示

    第35章 核心WPF
    35.1 理解WPF
    35.1.1 名称空间
    35.1.2 类层次结构
    35.2 形状
    35.3 几何图形
    35.4 变换
    35.5 画笔
    35.5.1 SolidColorBrush
    35.5.2 LinearGradientBrush
    35.5.3 RadialGradientBrush
    35.5.4 DrawingBrush
    35.5.5 ImageBrush
    35.5.6 VisualBrush
    35.6 控件
    35.6.1 简单控件
    35.6.2 内容控件
    35.6.3 带标题的内容控件
    35.6.4 项控件
    35.6.5 带标题的项控件
    35.6.6 修饰
    35.7 布局
    35.7.1 StackPanel
    35.7.2 WrapPanel
    35.7.3 Canvas
    35.7.4 DockPanel
    35.7.5 Grid
    35.8 样式和资源
    35.8.1 样式
    35.8.2 资源
    35.8.3 系统资源
    35.8.4 从代码中访问资源
    35.8.5 动态资源
    35.8.6 资源字典
    35.9 触发器
    35.9.1 属性触发器
    35.9.2 多触发器
    35.9.3 数据触发器
    35.10 模板
    35.10.1 控件模板
    35.10.2 数据模板
    35.10.3 样式化列表框
    35.10.4 ItemTemplate
    35.10.5 列表框元素的控件模板
    35.11 动画
    35.11.1 时间轴
    35.11.2 非线性动画
    35.11.3 事件触发器
    35.11.4 关键帧动画
    35.12 可见状态管理器
    35.12.1 可见的状态
    35.12.2 变换
    35.13 3-D
    35.13.1 模型
    35.13.2 照相机
    35.13.3 光线
    35.13.4 旋转
    35.14 小结

    第36章 用WPF编写业务
    应用程序
    36.1 概述
    36.2 菜单和功能区控件
    36.2.1 菜单控件
    36.2.2 功能区控件
    36.3 Commanding
    36.3.1 定义命令
    36.3.2 定义命令源
    36.3.3 命令绑定
    36.4 数据绑定
    36.4.1 BooksDemo应用程序内容
    36.4.2 用XAML绑定
    36.4.3 简单对象的绑定
    36.4.4 更改通知
    36.4.5 对象数据提供程序
    36.4.6 列表绑定
    36.4.7 主从绑定
    36.4.8 多绑定
    36.4.9 优先绑定
    36.4.10 值的转换
    36.4.11 动态添加列表项
    36.4.12 动态添加选项卡中的项
    36.4.13 数据模板选择器
    36.4.14 绑定到XML上
    36.4.15 绑定的验证
    36.5 TreeView
    36.6 DataGrid
    36.6.1 自定义列
    36.6.2 行的细节
    36.6.3 用DataGrid进行分组
    36.6.4 实时成型
    36.7 小结

    第37章 用WPF创建文档
    37.1 简介
    37.2 文本元素
    37.2.1 字体
    37.2.2 TextEffect
    37.2.3 内联
    37.2.4 块
    37.2.5 列表
    37.2.6 表
    37.2.7 块的锚定
    37.3 流文档
    37.4 固定文档
    37.5 XPS文档
    37.6 打印
    37.6.1 用PrintDialog打印
    37.6.2 打印可见元素
    37.7 小结

    第38章 Windows 8应用程序
    38.1 概述
    38.2 Windows 8的现代UI设计
    38.2.1 内容,不是chrome设计
    38.2.2 快速流畅
    38.2.3 可读性
    38.3 示例应用程序的核心功能
    38.3.1 文件和目录
    38.3.2 应用程序数据
    38.3.3 应用程序页面
    38.4 应用程序工具栏
    38.5 启动与导航
    38.6 布局的变化
    38.7 存储
    38.7.1 定义数据协定
    38.7.2 写入移动数据
    38.7.3 读取数据
    38.7.4 写入图像
    38.7.5 读取图像
    38.8 选择器
    38.9 共享协定
    38.9.1 共享源
    38.9.2 共享目标
    38.10 Tile
    38.11 小结

    第39章 核心ASP.NET
    39.1 用于Web应用程序的.NET Framework
    39.1.1 ASP.NET Web Forms
    39.1.2 ASP.NET Web Pages
    39.1.3 ASP.NET MVC
    39.2 Web技术
    39.2.1 HTML
    39.2.2 CSS
    39.2.3 JavaScript和jQuery
    39.3 托管和配置
    39.4 处理程序和模块
    39.4.1 创建自定义处理程序
    39.4.2 ASP.NET处理程序
    39.4.3 创建自定义模块
    39.4.4 通用模块
    39.5 全局的应用程序类
    39.6 请求和响应
    39.6.1 使用HttpRequest对象
    39.6.2 使用HttpResponse对象
    39.7 状态管理
    39.7.1 视图状态
    39.7.2 cookie
    39.7.3 会话
    39.7.4 应用程序状态
    39.7.5 缓存
    39.7.6 配置文件
    39.8 成员和角色
    39.8.1 配置成员
    39.8.2 使用成员API
    39.8.3 启用角色API
    39.9 小结

    第40章 ASP.NET Web Forms
    40.1 概述
    40.2 ASPX页面模型
    40.2.1 添加控件
    40.2.2 使用事件
    40.2.3 使用回送
    40.2.4 使用自动回送
    40.2.5 回送到其他页面
    40.2.6 定义强类型化的跨页面回送
    40.2.7 使用页面事件
    40.2.8 ASPX代码
    40.2.9 服务器端控件
    40.3 母版页
    40.3.1 创建母版页
    40.3.2 使用母版页
    40.3.3 在内容页中定义母版页内容
    40.4 导航
    40.4.1 站点地图
    40.4.2 Menu控件
    40.4.3 菜单路径
    40.5 验证用户输入
    40.5.1 使用验证控件
    40.5.2 使用验证摘要
    40.5.3 验证组
    40.6 访问数据
    40.6.1 使用Entity Framework
    40.6.2 使用Entity Data Source
    40.6.3 排序和编辑
    40.6.4 定制列
    40.6.5 在网格中使用模板
    40.6.6 定制对象上下文的创建过程
    40.6.7 对象数据源
    40.7 安全性
    40.7.1 启用表单身份验证
    40.7.2 登录控件
    40.8 Ajax
    40.8.1 ASP.NET AJAX的概念
    40.8.2 ASP.NET AJAX网站示例
    40.8.3 支持ASP.NET AJAX的网站配置
    40.8.4 添加ASP.NET AJAX功能
    40.9 小结

    第41章 ASP.NET MVC
    41.1 ASP.NET MVC概述
    41.2 定义路由
    41.2.1 添加路由
    41.2.2 路由约束
    41.3 创建控制器
    41.3.1 动作方法
    41.3.2 参数
    41.3.3 返回数据
    41.4 创建视图
    41.4.1 向视图传递数据
    41.4.2 Razor语法
    41.4.3 强类型视图
    41.4.4 布局
    41.4.5 部分视图
    41.5 从客户端提交数据
    41.5.1 模型绑定器
    41.5.2 注释和验证
    41.6 HTML Helper
    41.6.1 简单的Helper
    41.6.2 使用模型数据
    41.6.3 定义HTML特性
    41.6.4 创建列表
    41.6.5 强类型化的Helper
    41.6.6 编辑器扩展
    41.6.7 创建自定义Helper
    41.6.8 模板
    41.7 创建数据驱动的应用程序
    41.7.1 定义模型
    41.7.2 创建控制器和视图
    41.8 动作过滤器
    41.9 身份验证和授权
    41.9.1 登录模型
    41.9.2 登录控制器
    41.9.3 登录视图
    41.10 ASP.NET Web API
    41.10.1 使用Entity Framework Code-First进行数据访问
    41.10.2 为ASP.NET Web API定义路由
    41.10.3 控制器实现
    41.10.4 使用jQuery的客户端应用程序
    41.11 小结

    第42章 ASP.NET动态数据
    42.1 概述
    42.2 创建动态数据Web应用程序
    42.2.1 配置Scaffolding
    42.2.2 查看结果
    42.3 定制动态数据网站
    42.3.1 控制框架
    42.3.2 定制模板
    42.3.3 配置路由
    42.4 小结

    第Ⅵ部分 通 信

    第43章 WCF
    43.1 WCF概述
    43.1.1 SOAP
    43.1.2 WSDL
    43.1.3 REST
    43.1.4 JSON
    43.2 创建简单的服务和客户端
    43.2.1 定义服务和数据协定
    43.2.2 数据访问
    43.2.3 服务的实现
    43.2.4 WCF服务宿主和WCF测试客户端
    43.2.5 自定义服务宿主
    43.2.6 WCF客户端
    43.2.7 诊断
    43.2.8 与客户端共享协定程序集
    43.3 协定
    43.3.1 数据协定
    43.3.2 版本问题
    43.3.3 服务协定
    43.3.4 消息协定
    43.3.5 错误协定
    43.4 服务的行为
    43.5 绑定
    43.5.1 标准的绑定
    43.5.2 标准绑定的特性
    43.5.3 Web套接字
    43.6 宿主
    43.6.1 自定义宿主
    43.6.2 WAS宿主
    43.6.3 预配置的宿主类
    43.7 客户端
    43.7.1 使用元数据
    43.7.2 共享类型
    43.8 双工通信
    43.8.1 双工通信的协定
    43.8.2 双工通信的服务
    43.8.3 双工通信的客户端应用程序
    43.9 路由
    43.9.1 示例应用程序
    43.9.2 路由接口
    43.9.3 WCF路由服务
    43.9.4 为失败使用路由器
    43.9.5 改变协定的桥梁
    43.9.6 过滤器的类型
    43.10 小结

    第44章 WCF数据服务
    44.1 概述
    44.2 包含CLR对象的自定义宿主
    44.2.1 CLR对象
    44.2.2 数据模型
    44.2.3 数据服务
    44.2.4 驻留服务
    44.2.5 其他服务操作
    44.3 HTTP客户端应用程序
    44.4 使用WCF数据服务和ADO.NET Entity Framework
    44.4.1 ASP.NET宿主和EDM
    44.4.2 使用WCF数据服务客户库
    44.5 小结

    第45章 Windows WF 4
    45.1 工作流概述
    45.2 Hello World示例
    45.3 活动
    45.3.1 If活动
    45.3.2 InvokeMethod活动
    45.3.3 Parallel活动
    45.3.4 Delay活动
    45.3.5 Pick活动
    45.4 自定义活动
    45.4.1 活动的验证
    45.4.2 设计器
    45.4.3 自定义复合活动
    45.5 工作流
    45.5.1 实参和变量
    45.5.2 WorkflowApplication
    45.5.3 存放WCF工作流
    45.5.4 工作流的版本
    45.5.5 驻留设计器
    45.6 小结

    第46章 对等网络
    46.1 P2P网络概述
    46.1.1 客户端-服务器体系结构
    46.1.2 P2P体系结构
    46.1.3 P2P体系结构的挑战
    46.1.4 P2P术语
    46.1.5 P2P解决方案
    46.2 PNRP
    46.3 构建P2P应用程序
    46.4 小结

    第47章 消息队列
    47.1 概述
    47.1.1 使用消息队列的场合
    47.1.2 消息队列功能
    47.2 Message Queuing产品
    47.3 消息队列体系结构
    47.3.1 消息
    47.3.2 消息队列
    47.4 Message Queuing管理工具
    47.4.1 创建消息队列
    47.4.2 消息队列属性
    47.5 消息队列的编程实现
    47.5.1 创建消息队列
    47.5.2 查找队列
    47.5.3 打开已知队列
    47.5.4 发送消息
    47.5.5 接收消息
    47.6 课程订单应用程序
    47.6.1 课程订单类库
    47.6.2 课程订单消息发送程序
    47.6.3 发送优先级和可恢复的消息
    47.6.4 课程订单消息接收应用程序
    47.7 接收结果
    47.7.1 确认队列
    47.7.2 响应队列
    47.8 事务队列
    47.9 消息队列和WCF
    47.9.1 带数据协定的实体类
    47.9.2 WCF服务协定
    47.9.3 WCF消息接收应用程序
    47.9.4 WCF消息发送应用程序
    47.10 消息队列的安装
    47.11 小结
  • 内容简介:
      C#经典名著,连续畅销十五年,累计销售超20万册,引领无数读者进入程序开发殿堂
      版更新至C#2012和.NET4.5
      2009年度/2011年度全行业优秀畅销书,深受广大读者喜爱
      2008年度优秀技术图书!
      2007年度最畅销的C#销售图书!
      2006年最受读者喜爱的十大技术开发类图书!
      2005年最的十大IT图书之C#2010版

    本书版已经出版《C#高级编程(第9版):C#5.0&.NET4.5.1》

    更多好书推荐,欢迎进入清华大学出版社京东品牌店:
  • 作者简介:
      《C#高级编程(第8版)》是C#2012和.NET4.5高级技术的资源,旨在帮助读者更新、提高用C#2012和.NET4.5编写Windows应用程序、Web应用程序、Windows8样式应用程序的技巧。本书的作者专家团队首先介绍了C#的基础知识,之后全面探讨了该语言和架构中的新增功能,以及新的测试驱动的开发和并发编程特性。《C#高级编程(第8版)》提供了学习C#2012和.NET4.5所需的所有知识,使读者可以限度地发挥出这些动态技术的潜能。
      主要内容:
      介绍富有挑战性的.NET特性,包括LINQ、LINQtoEquities、LINQtoXML、WCF、WPF、Workflow和泛型
      详细论述了异步编程、模式、基础和方法
      研究了Windows8开发的新选项和接口、WinRT和Windows8样式应用程序
      阐述了文件和注册表的操作
      介绍了WPF编程,包括样式、数据驱动的应用程序和文档、ASP.NETWebForms以及ASP.NETMVC
  • 目录:
    第Ⅰ部分 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.4.4 并行编程
    1.4.5 异步编程
    1.5 .NET Framework类
    1.6 名称空间
    1.7 用C#创建.NET应用程序
    1.7.1 创建ASP.NET应用程序
    1.7.2 使用WPF
    1.7.3 Windows 8应用程序
    1.7.4 Windows服务
    1.7.5 WCF
    1.7.6 Windows WF
    1.8 C#在.NET企业体系结构中的作用
    1.9 小结

    第2章 核心C#
    2.1 C#基础
    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.7.1 using语句
    2.7.2 名称空间的别名
    2.8 Main()方法
    2.8.1 多个Main()方法
    2.8.2 给Main()方法传递参数
    2.9 有关编译C#文件的更多内容
    2.10 控制台I/O
    2.11 使用注释
    2.11.1 源文件中的内部注释
    2.11.2 XML文档
    2.12 C#预处理器指令
    2.12.1 #define和 #undef
    2.12.2 #if、#elif、#else和#endif
    2.12.3 #warning和 # error
    2.12.4 #region和#endregion
    2.12.5 #line
    2.12.6 #pragma
    2.13 C#编程规则
    2.13.1 关于标识符的规则
    2.13.2 用法约定
    2.14 小结

    第3章 对象和类型
    3.1 创建及使用类
    3.2 类和结构
    3.3 类
    3.3.1 数据成员
    3.3.2 函数成员
    3.3.3 只读字段
    3.4 匿名类型
    3.5 结构
    3.5.1 结构是值类型
    3.5.2 结构和继承
    3.5.3 结构的构造函数
    3.6 弱引用
    3.7 部分类
    3.8 静态类
    3.9 Object类
    3.9.1 System.Object()方法
    3.9.2 ToString()方法
    3.10 扩展方法
    3.11 小结

    第4章 继承
    4.1 继承
    4.2 继承的类型
    4.2.1 实现继承和接口继承
    4.2.2 多重继承
    4.2.3 结构和类
    4.3 实现继承
    4.3.1 虚方法
    4.3.2 隐藏方法
    4.3.3 调用函数的基类版本
    4.3.4 抽象类和抽象函数
    4.3.5 密封类和密封方法
    4.3.6 派生类的构造函数
    4.4 修饰符
    4.4.1 可见性修饰符
    4.4.2 其他修饰符
    4.5 接口
    4.5.1 定义和实现接口
    4.5.2 派生的接口
    4.6 小结

    第5章 泛型
    5.1 泛型概述
    5.1.1 性能
    5.1.2 类型安全
    5.1.3 二进制代码的重用
    5.1.4 代码的扩展
    5.1.5 命名约定
    5.2 创建泛型类
    5.3 泛型类的功能
    5.3.1 默认值
    5.3.2 约束
    5.3.3 继承
    5.3.4 静态成员
    5.4 泛型接口
    5.4.1 协变和抗变
    5.4.2 泛型接口的协变
    5.4.3 泛型接口的抗变
    5.5 泛型结构
    5.6 泛型方法
    5.6.1 泛型方法示例
    5.6.2 带约束的泛型方法
    5.6.3 带委托的泛型方法
    5.6.4 泛型方法规范
    5.7 小结

    第6章 数组
    6.1 同一类型和不同类型的多个对象
    6.2 简单数组
    6.2.1 数组的声明
    6.2.2 数组的初始化
    6.2.3 访问数组元素
    6.2.4 使用引用类型
    6.3 多维数组
    6.4 锯齿数组
    6.5 Array类
    6.5.1 创建数组
    6.5.2 复制数组
    6.5.3 排序
    6.6 数组作为参数
    6.6.1 数组协变
    6.6.2 ArraySegment
    6.7 枚举
    6.7.1 IEnumerator接口
    6.7.2 foreach语句
    6.7.3 yield语句
    6.8 元组
    6.9 结构比较
    6.10 小结

    第7章 运算符和类型强制转换
    7.1 运算符和类型转换
    7.2 运算符
    7.2.1 运算符的简化操作
    7.2.2 运算符的优先级
    7.3 类型的安全性
    7.3.1 类型转换
    7.3.2 装箱和拆箱
    7.4 比较对象的相等性
    7.4.1 比较引用类型的相等性
    7.4.2 比较值类型的相等性
    7.5 运算符重载
    7.5.1 运算符的工作方式
    7.5.2 运算符重载的示例:Vector结构
    7.6 用户定义的类型强制转换
    7.6.1 实现用户定义的类型强制转换
    7.6.2 多重类型强制转换
    7.7 小结

    第8章 委托、Lambda表达式
    和事件
    8.1 引用方法
    8.2 委托
    8.2.1 声明委托
    8.2.2 使用委托
    8.2.3 简单的委托示例
    8.2.4 Action和Func委托
    8.2.5 BubbleSorter示例
    8.2.6 多播委托
    8.2.7 匿名方法
    8.3 Lambda表达式
    8.3.1 参数
    8.3.2 多行代码
    8.3.3 闭包
    8.3.4 使用foreach语句的闭包
    8.4 事件
    8.4.1 事件发布程序
    8.4.2 事件侦听器
    8.4.3 弱事件
    8.5 小结

    第9章 字符串和正则表达式
    9.1 System.String类
    9.1.1 创建字符串
    9.1.2 StringBuilder成员
    9.1.3 格式字符串
    9.2 正则表达式
    9.2.1 正则表达式概述
    9.2.2 RegularExpressionsPlayaround示例
    9.2.3 显示结果
    9.2.4 匹配、组合和捕获
    9.3 小结

    第10章 集合
    10.1 概述
    10.2 集合接口和类型
    10.3 列表
    10.3.1 创建列表
    10.3.2 只读集合
    10.4 队列
    10.5 栈
    10.6 链表
    10.7 有序列表
    10.8 字典
    10.8.1 键的类型
    10.8.2 字典示例
    10.8.3 Lookup类
    10.8.4 有序字典
    10.9 集
    10.10 可观察的集合
    10.11 位数组
    10.11.1 BitArray类
    10.11.2 BitVector32结构
    10.12 并发集合
    10.12.1 创建管道
    10.12.2 使用Blocking-Collection
    10.12.3 使用Concurrent-Dictionary
    10.12.4 完成管道
    10.13 性能
    10.14 小结

    第11章 LINQ
    11.1 LINQ概述
    11.1.1 列表和实体
    11.1.2 LINQ查询
    11.1.3 扩展方法
    11.1.4 推迟查询的执行
    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.2.14 聚合操作符
    11.2.15 转换操作符
    11.2.16 生成操作符
    11.3 并行LINQ
    11.3.1 并行查询
    11.3.2 分区器
    11.3.3 取消
    11.4 表达式树
    11.5 LINQ提供程序
    11.6 小结

    第12章 动态语言扩展
    12.1 DLR
    12.2 dynamic类型
    12.3 包含DLR ScriptRuntime
    12.4 DynamicObject和ExpandoObject
    12.4.1 DynamicObject
    12.4.2 ExpandoObject
    12.5 小结

    第13章 异步编程
    13.1 异步编程的重要性
    13.2 异步模式
    13.2.1 同步调用
    13.2.2 异步模式
    13.2.3 基于事件的异步模式
    13.2.4 基于任务的异步模式
    13.3 异步编程的基础
    13.3.1 创建任务
    13.3.2 调用异步方法
    13.3.3 延续任务
    13.3.4 同步上下文
    13.3.5 使用多个异步方法
    13.3.6 转换异步模式
    13.4 错误处理
    13.4.1 异步方法的异常处理
    13.4.2 多个异步方法的异常处理
    13.4.3 AggregateException类
    13.5 取消
    13.5.1 开始取消任务
    13.5.2 使用框架特性取消任务
    13.5.3 取消自定义任务
    13.6 小结

    第14章 内存管理和指针
    14.1 内存管理
    14.2 后台内存管理
    14.2.1 值数据类型
    14.2.2 引用数据类型
    14.2.3 垃圾回收
    14.3 释放非托管的资源
    14.3.1 析构函数
    14.3.2 IDisposable接口
    14.3.3 实现IDisposable接口和析构函数
    14.4 不安全的代码
    14.4.1 用指针直接访问内存
    14.4.2 指针示例:PointerPlayground
    14.4.3 使用指针优化性能
    14.5 小结

    第15章 反射
    15.1 在运行期间处理和检查代码
    15.2 自定义特性
    15.2.1 编写自定义特性
    15.2.2 自定义特性示例:WhatsNewAttributes
    15.3 反射
    15.3.1 System.Type类
    15.3.2 TypeView示例
    15.3.3 Assembly类
    15.3.4 完成WhatsNewAttributes示例
    15.4 小结

    第16章 错误和异常
    16.1 简介
    16.2 异常类
    16.3 捕获异常
    16.3.1 实现多个catch块
    16.3.2 在其他代码中捕获异常
    16.3.3 System.Exception属性
    16.3.4 没有处理异常时所发生的情况
    16.3.5 嵌套的 try块
    16.4 用户定义的异常类
    16.4.1 捕获用户定义的异常
    16.4.2 抛出用户定义的异常
    16.4.3 定义用户定义的异常类
    16.5 调用者信息
    16.6 小结

    第Ⅱ部分 Visual Studio

    第17章 Visual Studio 2012
    17.1 用Visual Studio 2012进行工作
    17.1.1 项目文件的改进
    17.1.2 Visual Studio的版本
    17.1.3 Visual Studio设置
    17.2 创建项目
    17.2.1 面向多个版本的.NET Framework
    17.2.2 选择项目类型
    17.3 浏览并编写项目
    17.3.1 Solution Explorer
    17.3.2 用代码编辑器进行工作
    17.3.3 学习和理解其他窗口
    17.3.4 排列窗口
    17.4 构建项目
    17.4.1 构建、编译和生成
    17.4.2 调试版本和发布版本
    17.4.3 选择配置
    17.4.4 编辑配置
    17.5 调试代码
    17.5.1 设置断点
    17.5.2 使用数据提示和调试器可视化工具
    17.5.3 监视和修改变量
    17.5.4 异常
    17.5.5 多线程
    17.5.6 IntelliTrace
    17.6 重构工具
    17.7 体系结构工具
    17.7.1 依赖项关系图
    17.7.2 层关系图
    17.8 分析应用程序
    17.8.1 序列图
    17.8.2 探查器
    17.8.3 Concurrency Visualizer
    17.8.4 Code Analysis
    17.8.5 Code Metrics
    17.9 单元测试
    17.9.1 创建单元测试
    17.9.2 运行单元测试
    17.9.3 预期异常
    17.9.4 测试全部代码路径
    17.9.5 外部依赖
    17.9.6 Fakes Framework
    17.10 Windows 8、WCF、WF等
    17.10.1 使用Visual Studio 2012生成WCF应用程序
    17.10.2 使用Visual Studio 2012生成WF应用程序
    17.10.3 使用Visual Studio 2012生成Windows Store应用程序
    17.11 小结

    第18章 部署
    18.1 部署是应用程序生命周期的一部分
    18.2 部署的规划
    18.2.1 部署选项
    18.2.2 部署要求
    18.2.3 部署.NET运行库
    18.3 传统的部署选项
    18.3.1 xcopy部署
    18.3.2 xcopy和Web应用程序
    18.3.3 Windows Installer
    18.4 ClickOnce
    18.4.1 ClickOnce操作
    18.4.2 发布ClickOnce应用程序
    18.4.3 ClickOnce设置
    18.4.4 ClickOnce文件的应用程序缓存
    18.4.5 应用程序的安装
    18.4.6 ClickOnce部署API
    18.5 Web部署
    18.5.1 Web应用程序
    18.5.2 配置文件
    18.5.3 创建Web Deploy包
    18.6 Windows 8应用程序
    18.6.1 创建应用程序包
    18.6.2 Windows App Certification Kit
    18.6.3 旁加载
    18.6.4 Windows部署API
    18.7 小结

    第Ⅲ部分 基 础

    第19章 程序集
    19.1 程序集的含义
    19.1.1 程序集的功能
    19.1.2 程序集的结构
    19.1.3 程序集清单
    19.1.4 名称空间、程序集和组件
    19.1.5 私有程序集和共享程序集
    19.1.6 附属程序集
    19.1.7 查看程序集
    19.2 构建程序集
    19.2.1 创建模块和程序集
    19.2.2 程序集的特性
    19.2.3 创建和动态加载程序集
    19.3 应用程序域
    19.4 共享程序集
    19.4.1 强名
    19.4.2 使用强名获得完整性
    19.4.3 全局程序集缓存
    19.4.4 创建共享程序集
    19.4.5 创建强名
    19.4.6 安装共享程序集
    19.4.7 使用共享程序集
    19.4.8 程序集的延迟签名
    19.4.9 引用
    19.4.10 本机映像生成器
    19.5 配置.NET应用程序
    19.5.1 配置类别
    19.5.2 绑定程序集
    19.6 版本问题
    19.6.1 版本号
    19.6.2 通过编程方式获取版本
    19.6.3 绑定到程序集版本
    19.6.4 发行者策略文件
    19.6.5 运行库的版本
    19.7 在不同的技术之间共享程序集
    19.7.1 共享源代码
    19.7.2 可移植类库
    19.8 小结

    第20章 诊断
    20.1 诊断概述
    20.2 代码协定
    20.2.1 前提条件
    20.2.2 后置条件
    20.2.3 不变量
    20.2.4 纯粹性
    20.2.5 接口的协定
    20.2.6 简写
    20.2.7 协定和遗留代码
    20.3 跟踪
    20.3.1 跟踪源
    20.3.2 跟踪开关
    20.3.3 跟踪侦听器
    20.3.4 筛选器
    20.3.5 相关性
    20.3.6 使用ETW进行跟踪
    20.4 事件日志
    20.4.1 事件日志体系结构
    20.4.2 事件日志类
    20.4.3 创建事件源
    20.4.4 写入事件日志
    20.4.5 资源文件
    20.5 性能监视
    20.5.1 性能监视类
    20.5.2 性能计数器生成器
    20.5.3 添加PerformanceCounter组件
    20.5.4 perfmon.exe
    20.6 小结

    第21章 任务、线程和同步
    21.1 概述
    21.2 Parallel类
    21.2.1 用Parallel.For()方法循环
    21.2.2 使用Parallel.ForEach()方法循环
    21.2.3 通过Parallel.Invoke()方法调用多个方法
    21.3 任务
    21.3.1 启动任务
    21.3.2 Future-- 任务的结果
    21.3.3 连续的任务
    21.3.4 任务层次结构
    21.4 取消架构
    21.4.1 Parallel.For()方法的取消
    21.4.2 任务的取消
    21.5 线程池
    21.6 Thread类
    21.6.1 给线程传递数据
    21.6.2 后台线程
    21.6.3 线程的优先级
    21.6.4 控制线程
    21.7 线程问题
    21.7.1 争用条件
    21.7.2 死锁
    21.8 同步
    21.8.1 lock语句和线程安全
    21.8.2 Interlocked类
    21.8.3 Monitor类
    21.8.4 SpinLock结构
    21.8.5 WaitHandle基类
    21.8.6 Mutex类
    21.8.7 Semaphore类
    21.8.8 Events类
    21.8.9 Barrier类
    21.8.10 ReaderWriterLockSlim类
    21.9 Timer类
    21.10 数据流
    21.10.1 使用动作块
    21.10.2 源和目标数据块
    21.10.3 连接块
    21.11 小结

    第22章 安全性
    22.1 概述
    22.2 身份验证和授权
    22.2.1 标识和Principal
    22.2.2 角色
    22.2.3 声明基于角色的安全性
    22.2.4 声称
    22.2.5 客户端应用程序服务
    22.3 加密
    22.3.1 签名
    22.3.2 交换密钥和安全传输
    22.4 资源的访问控制
    22.5 代码访问安全性
    22.5.1
    第2级安全透明性
    22.5.2 权限
    22.6 使用证书发布代码
    22.7 小结

    第23章 互操作
    23.1 .NET和COM技术
    23.1.1 元数据
    23.1.2 释放内存
    23.1.3 接口
    23.1.4 方法绑定
    23.1.5 数据类型
    23.1.6 注册
    23.1.7 线程
    23.1.8 错误处理
    23.1.9 事件
    23.1.10 封送
    23.2 在.NET客户端中使用COM组件
    23.2.1 创建一个COM组件
    23.2.2 创建运行库可调用包装
    23.2.3 使用RCW
    23.2.4 通过动态语言扩展使用COM服务
    23.2.5 线程问题
    23.2.6 添加连接点
    23.3 在COM客户端中使用.NET组件
    23.3.1 COM可调用包装
    23.3.2 创建.NET组件
    23.3.3 创建一个类型库
    23.3.4 COM互操作特性
    23.3.5 COM注册
    23.3.6 创建COM客户端应用程序
    23.3.7 添加连接点
    23.3.8 使用sink对象创建客户端
    23.3.9 平台调用
    23.4 小结

    第24章 文件和注册表操作
    24.1 文件和注册表
    24.2 管理文件系统
    24.2.1 表示文件和文件夹的.NET类
    24.2.2 Path类
    24.2.3 FileProperties示例
    24.3 移动、复制和删除文件
    24.3.1 FilePropertiesAndMovement示例
    24.3.2 FilePropertiesAndMovement示例的代码
    24.4 读写文件
    24.4.1 读取文件
    24.4.2 写入文件
    24.4.3 流
    24.4.4 缓存的流
    24.4.5 使用FileStream类读写二进制文件
    24.4.6 读写文本文件
    24.5 映射内存的文件
    24.6 读取驱动器信息
    24.7 文件的安全性
    24.7.1 从文件中读取ACL
    24.7.2 从目录中读取ACL
    24.7.3 添加和删除文件中的ACL项
    24.8 读写注册表
    24.8.1 注册表
    24.8.2 .NET注册表类
    24.9 读写独立存储器
    24.10 小结

    第25章 事务处理
    25.1 简介
    25.2 概述
    25.2.1 事务处理阶段
    25.2.2 ACID属性
    25.3 数据库和实体类
    25.4 传统的事务
    25.4.1 ADO.NET事务
    25.4.2 System.Enterprise-Services
    25.5 System.Transactions
    25.5.1 可提交的事务
    25.5.2 事务处理的升级
    25.5.3 依赖事务
    25.5.4 环境事务
    25.6 隔离级别
    25.7 自定义资源管理器
    25.8 文件系统事务
    25.9 小结

    第26章 网络
    26.1 网络
    26.2 WebClient类
    26.2.1 下载文件
    26.2.2 基本的WebClient示例
    26.2.3 上传文件
    26.3 WebRequest类和WebResponse类
    26.3.1 身份验证
    26.3.2 使用代理
    26.3.3 异步页面请求
    26.4 把输出结果显示为HTML页面
    26.4.1 从应用程序中进行简单的Web浏览
    26.4.2 启动Internet Explorer实例
    26.4.3 给应用程序提供更多IE类型的功能
    26.4.4 使用WebBrowser控件打印
    26.4.5 显示所请求页面的代码
    26.4.6 WebRequest类和WebResponse类的层次结构
    26.5 实用工具类
    26.5.1 URI
    26.5.2 IP地址和DNS名称
    26.6 较低层的协议
    26.6.1 使用SmtpClient
    26.6.2 使用TCP类
    26.6.3 TcpSend和TcpReceive示例
    26.6.4 TCP和UDP
    26.6.5 UDP类
    26.6.6 Socket类
    26.6.7 WebSocket
    26.7 小结

    第27章 Windows服务
    27.1 Windows服务
    27.2 Windows服务的体系结构
    27.2.1 服务程序
    27.2.2 服务控制程序
    27.2.3 服务配置程序
    27.2.4 Windows服务的类
    27.3 创建Windows服务程序
    27.3.1 创建服务的核心功能
    27.3.2 QuoteClient示例
    27.3.3 Windows服务程序
    27.3.4 线程化和服务
    27.3.5 服务的安装
    27.3.6 安装程序
    27.4 Windows服务的监控和控制
    27.4.1 MMC管理单元
    27.4.2 net.exe实用程序
    27.4.3 sc.exe实用程序
    27.4.4 Visual Studio Server Explorer
    27.4.5 编写自定义ServiceController类
    27.5 故障排除和事件日志
    27.6 小结

    第28章 本地化
    28.1 全球市场
    28.2 System.Globalization名称空间
    28.2.1 Unicode问题
    28.2.2 区域性和区域
    28.2.3 使用区域性
    28.2.4 排序
    28.3 资源
    28.3.1 创建资源文件
    28.3.2 资源文件生成器
    28.3.3 ResourceWriter
    28.3.4 使用资源文件
    28.3.5 System.Resources名称空间
    28.4 使用Visual Studio的Windows Forms本地化
    28.4.1 通过编程方式修改区域性
    28.4.2 使用自定义资源消息
    28.4.3 资源的自动回退
    28.4.4 外包翻译
    28.5 ASP.NET Web Forms的本地化
    28.6 用WPF本地化
    28.6.1 用于WPF的.NET资源
    28.6.2 XAML资源字典
    28.7 自定义资源读取器
    28.7.1 创建DatabaseResource- Reader类
    28.7.2 创建DatabaseResource-Set类
    28.7.3 创建DatabaseResource-Manager类
    28.7.4 DatabaseResourceReader的客户端应用程序
    28.8 创建自定义区域性
    28.9 用Windows Store应用程序进行本地化
    28.9.1 使用资源
    28.9.2 使用多语言应用程序工具集进行本地化
    28.10 小结

    第29章 核心XAML
    29.1 XAML的作用
    29.2 概述
    29.2.1 元素如何映射到.NET对象上
    29.2.2 使用自定义.NET类
    29.2.3 把属性用作特性
    29.2.4 把属性用作元素
    29.2.5 基本的.NET类型
    29.2.6 使用集合和XAML
    29.2.7 用XAML代码调用构造函数
    29.3 依赖属性
    29.3.1 创建依赖属性
    29.3.2 强制值回调
    29.3.3 值变更回调和事件
    29.3.4 事件的冒泡和隧道
    29.4 附加属性
    29.5 标记扩展
    29.6 创建自定义标记扩展
    29.7 XAML定义的标记扩展
    29.8 读写XAML
    29.9 小结

    第30章 Managed Extensibility Framework
    30.1 概述
    30.2 MEF的体系结构
    30.2.1 使用属性的MEF
    30.2.2 基于约定的部件注册
    30.3 定义协定
    30.4 导出部件
    30.4.1 创建部件
    30.4.2 导出属性和方法
    30.4.3 导出元数据
    30.4.4 使用元数据进行惰性加载
    30.5 导入部件
    30.5.1 导入连接
    30.5.2 部件的惰性加载
    30.5.3 用惰性实例化的部件读取元数据
    30.6 容器和出口提供程序
    30.7 类别
    30.8 小结

    第31章 Windows运行库
    31.1 概述
    31.1.1 .NET与Windows运行库的比较
    31.1.2 名称空间
    31.1.3 元数据
    31.1.4 语言投射
    31.1.5 Windows运行库中的类型
    31.2 Windows运行库组件
    31.2.1 集合
    31.2.2 流
    31.2.3 委托与事件
    31.2.4 异步操作
    31.3 Windows 8应用程序
    31.4 Windows 8应用程序的生命周期
    31.4.1 Windows 8应用程序的执行状态
    31.4.2 SuspensionManager
    31.4.3 导航状态
    31.4.4 测试暂停
    31.4.5 页面状态
    31.5 Windows 8应用程序的设置
    31.6 摄像头功能
    31.7 小结

    第Ⅳ部分 数 据

    第32章 核心ADO.NET
    32.1 ADO.NET概述
    32.1.1 名称空间
    32.1.2 共享类
    32.1.3 数据库专用类
    32.2 使用数据库连接
    32.2.1 管理连接字符串
    32.2.2 高效地使用连接
    32.2.3 事务
    32.3 命令
    32.3.1 执行命令
    32.3.2 调用存储过程
    32.4 快速数据访问:数据读取器
    32.5 异步数据访问:使用Task和await
    32.6 管理数据和关系:DataSet类
    32.6.1 数据表
    32.6.2 数据列
    32.6.3 数据关系
    32.6.4 数据约束
    32.7 XML架构:用XSD生成代码
    32.8 填充DataSet类
    32.8.1 用数据适配器填充DataSet
    32.8.2 从XML中填充DataSet类
    32.9 持久化DataSet类的修改
    32.9.1 通过数据适配器进行更新
    32.9.2 写入XML输出结果
    32.10 使用ADO.NET
    32.10.1 分层开发
    32.10.2 生成SQL Server的键
    32.10.3 命名约定
    32.11 小结

    第33章 ADO.NET Entity Framework
    33.1 用Entity Framework编程
    33.2 Entity Framework映射
    33.2.1 逻辑层
    33.2.2 概念层
    33.2.3 映射层
    33.2.4 连接字符串
    33.3 实体
    33.4 对象上下文
    33.5 关系
    33.5.1 一个层次结构一个表
    33.5.2 一种类型一个表
    33.5.3 懒惰加载、延迟加载和预先加载
    33.6 查询数据
    33.6.1 Entity SQL
    33.6.2 对象查询
    33.6.3 LINQ to Entities
    33.7 把数据写入数据库
    33.7.1 对象跟踪
    33.7.2 改变信息
    33.7.3 附加和分离实体
    33.7.4 存储实体的变化
    33.8 使用POCO对象
    33.8.1 定义实体类型
    33.8.2 创建数据上下文
    33.8.3 查询和更新
    33.9 使用Code First编程模型
    33.9.1 定义实体类型
    33.9.2 创建数据上下文
    33.9.3 创建数据库,存储实体
    33.9.4 数据库
    33.9.5 查询数据
    33.9.6 定制数据库的生成
    33.10 小结

    第34章 处理XML
    34.1 XML
    34.2 .NET支持的XML标准
    34.3 System.Xml名称空间
    34.4 使用System.Xml类
    34.5 读写流格式的XML
    34.5.1 使用 XmlReader类
    34.5.2 使用XmlReader类进行验证
    34.5.3 使用XmlWriter类
    34.6 在.NET中使用DOM
    34.7 使用XPathNavigator类
    34.7.1 System.Xml.XPath名称空间
    34.7.2 System.Xml.Xsl名称空间
    34.7.3 调试XSLT
    34.8 XML和ADO.NET
    34.8.1 将ADO.NET数据转换为XML文档
    34.8.2 把XML文档转换为ADO.NET数据
    34.9 在XML中序列化对象
    34.10 LINQ to XML和.NET
    34.11 使用不同的XML对象
    34.11.1 XDocument对象
    34.11.2 XElement对象
    34.11.3 XNamespace对象
    34.11.4 XComment对象
    34.11.5 XAttribute对象
    34.12 使用LINQ查询XML文档
    34.12.1 查询静态的XML文档
    34.12.2 查询动态的XML文档
    34.13 XML文档的更多查询技术
    34.13.1 读取XML文档
    34.13.2 写入XML文档
    34.14 小结

    第Ⅴ部分 显 示

    第35章 核心WPF
    35.1 理解WPF
    35.1.1 名称空间
    35.1.2 类层次结构
    35.2 形状
    35.3 几何图形
    35.4 变换
    35.5 画笔
    35.5.1 SolidColorBrush
    35.5.2 LinearGradientBrush
    35.5.3 RadialGradientBrush
    35.5.4 DrawingBrush
    35.5.5 ImageBrush
    35.5.6 VisualBrush
    35.6 控件
    35.6.1 简单控件
    35.6.2 内容控件
    35.6.3 带标题的内容控件
    35.6.4 项控件
    35.6.5 带标题的项控件
    35.6.6 修饰
    35.7 布局
    35.7.1 StackPanel
    35.7.2 WrapPanel
    35.7.3 Canvas
    35.7.4 DockPanel
    35.7.5 Grid
    35.8 样式和资源
    35.8.1 样式
    35.8.2 资源
    35.8.3 系统资源
    35.8.4 从代码中访问资源
    35.8.5 动态资源
    35.8.6 资源字典
    35.9 触发器
    35.9.1 属性触发器
    35.9.2 多触发器
    35.9.3 数据触发器
    35.10 模板
    35.10.1 控件模板
    35.10.2 数据模板
    35.10.3 样式化列表框
    35.10.4 ItemTemplate
    35.10.5 列表框元素的控件模板
    35.11 动画
    35.11.1 时间轴
    35.11.2 非线性动画
    35.11.3 事件触发器
    35.11.4 关键帧动画
    35.12 可见状态管理器
    35.12.1 可见的状态
    35.12.2 变换
    35.13 3-D
    35.13.1 模型
    35.13.2 照相机
    35.13.3 光线
    35.13.4 旋转
    35.14 小结

    第36章 用WPF编写业务
    应用程序
    36.1 概述
    36.2 菜单和功能区控件
    36.2.1 菜单控件
    36.2.2 功能区控件
    36.3 Commanding
    36.3.1 定义命令
    36.3.2 定义命令源
    36.3.3 命令绑定
    36.4 数据绑定
    36.4.1 BooksDemo应用程序内容
    36.4.2 用XAML绑定
    36.4.3 简单对象的绑定
    36.4.4 更改通知
    36.4.5 对象数据提供程序
    36.4.6 列表绑定
    36.4.7 主从绑定
    36.4.8 多绑定
    36.4.9 优先绑定
    36.4.10 值的转换
    36.4.11 动态添加列表项
    36.4.12 动态添加选项卡中的项
    36.4.13 数据模板选择器
    36.4.14 绑定到XML上
    36.4.15 绑定的验证
    36.5 TreeView
    36.6 DataGrid
    36.6.1 自定义列
    36.6.2 行的细节
    36.6.3 用DataGrid进行分组
    36.6.4 实时成型
    36.7 小结

    第37章 用WPF创建文档
    37.1 简介
    37.2 文本元素
    37.2.1 字体
    37.2.2 TextEffect
    37.2.3 内联
    37.2.4 块
    37.2.5 列表
    37.2.6 表
    37.2.7 块的锚定
    37.3 流文档
    37.4 固定文档
    37.5 XPS文档
    37.6 打印
    37.6.1 用PrintDialog打印
    37.6.2 打印可见元素
    37.7 小结

    第38章 Windows 8应用程序
    38.1 概述
    38.2 Windows 8的现代UI设计
    38.2.1 内容,不是chrome设计
    38.2.2 快速流畅
    38.2.3 可读性
    38.3 示例应用程序的核心功能
    38.3.1 文件和目录
    38.3.2 应用程序数据
    38.3.3 应用程序页面
    38.4 应用程序工具栏
    38.5 启动与导航
    38.6 布局的变化
    38.7 存储
    38.7.1 定义数据协定
    38.7.2 写入移动数据
    38.7.3 读取数据
    38.7.4 写入图像
    38.7.5 读取图像
    38.8 选择器
    38.9 共享协定
    38.9.1 共享源
    38.9.2 共享目标
    38.10 Tile
    38.11 小结

    第39章 核心ASP.NET
    39.1 用于Web应用程序的.NET Framework
    39.1.1 ASP.NET Web Forms
    39.1.2 ASP.NET Web Pages
    39.1.3 ASP.NET MVC
    39.2 Web技术
    39.2.1 HTML
    39.2.2 CSS
    39.2.3 JavaScript和jQuery
    39.3 托管和配置
    39.4 处理程序和模块
    39.4.1 创建自定义处理程序
    39.4.2 ASP.NET处理程序
    39.4.3 创建自定义模块
    39.4.4 通用模块
    39.5 全局的应用程序类
    39.6 请求和响应
    39.6.1 使用HttpRequest对象
    39.6.2 使用HttpResponse对象
    39.7 状态管理
    39.7.1 视图状态
    39.7.2 cookie
    39.7.3 会话
    39.7.4 应用程序状态
    39.7.5 缓存
    39.7.6 配置文件
    39.8 成员和角色
    39.8.1 配置成员
    39.8.2 使用成员API
    39.8.3 启用角色API
    39.9 小结

    第40章 ASP.NET Web Forms
    40.1 概述
    40.2 ASPX页面模型
    40.2.1 添加控件
    40.2.2 使用事件
    40.2.3 使用回送
    40.2.4 使用自动回送
    40.2.5 回送到其他页面
    40.2.6 定义强类型化的跨页面回送
    40.2.7 使用页面事件
    40.2.8 ASPX代码
    40.2.9 服务器端控件
    40.3 母版页
    40.3.1 创建母版页
    40.3.2 使用母版页
    40.3.3 在内容页中定义母版页内容
    40.4 导航
    40.4.1 站点地图
    40.4.2 Menu控件
    40.4.3 菜单路径
    40.5 验证用户输入
    40.5.1 使用验证控件
    40.5.2 使用验证摘要
    40.5.3 验证组
    40.6 访问数据
    40.6.1 使用Entity Framework
    40.6.2 使用Entity Data Source
    40.6.3 排序和编辑
    40.6.4 定制列
    40.6.5 在网格中使用模板
    40.6.6 定制对象上下文的创建过程
    40.6.7 对象数据源
    40.7 安全性
    40.7.1 启用表单身份验证
    40.7.2 登录控件
    40.8 Ajax
    40.8.1 ASP.NET AJAX的概念
    40.8.2 ASP.NET AJAX网站示例
    40.8.3 支持ASP.NET AJAX的网站配置
    40.8.4 添加ASP.NET AJAX功能
    40.9 小结

    第41章 ASP.NET MVC
    41.1 ASP.NET MVC概述
    41.2 定义路由
    41.2.1 添加路由
    41.2.2 路由约束
    41.3 创建控制器
    41.3.1 动作方法
    41.3.2 参数
    41.3.3 返回数据
    41.4 创建视图
    41.4.1 向视图传递数据
    41.4.2 Razor语法
    41.4.3 强类型视图
    41.4.4 布局
    41.4.5 部分视图
    41.5 从客户端提交数据
    41.5.1 模型绑定器
    41.5.2 注释和验证
    41.6 HTML Helper
    41.6.1 简单的Helper
    41.6.2 使用模型数据
    41.6.3 定义HTML特性
    41.6.4 创建列表
    41.6.5 强类型化的Helper
    41.6.6 编辑器扩展
    41.6.7 创建自定义Helper
    41.6.8 模板
    41.7 创建数据驱动的应用程序
    41.7.1 定义模型
    41.7.2 创建控制器和视图
    41.8 动作过滤器
    41.9 身份验证和授权
    41.9.1 登录模型
    41.9.2 登录控制器
    41.9.3 登录视图
    41.10 ASP.NET Web API
    41.10.1 使用Entity Framework Code-First进行数据访问
    41.10.2 为ASP.NET Web API定义路由
    41.10.3 控制器实现
    41.10.4 使用jQuery的客户端应用程序
    41.11 小结

    第42章 ASP.NET动态数据
    42.1 概述
    42.2 创建动态数据Web应用程序
    42.2.1 配置Scaffolding
    42.2.2 查看结果
    42.3 定制动态数据网站
    42.3.1 控制框架
    42.3.2 定制模板
    42.3.3 配置路由
    42.4 小结

    第Ⅵ部分 通 信

    第43章 WCF
    43.1 WCF概述
    43.1.1 SOAP
    43.1.2 WSDL
    43.1.3 REST
    43.1.4 JSON
    43.2 创建简单的服务和客户端
    43.2.1 定义服务和数据协定
    43.2.2 数据访问
    43.2.3 服务的实现
    43.2.4 WCF服务宿主和WCF测试客户端
    43.2.5 自定义服务宿主
    43.2.6 WCF客户端
    43.2.7 诊断
    43.2.8 与客户端共享协定程序集
    43.3 协定
    43.3.1 数据协定
    43.3.2 版本问题
    43.3.3 服务协定
    43.3.4 消息协定
    43.3.5 错误协定
    43.4 服务的行为
    43.5 绑定
    43.5.1 标准的绑定
    43.5.2 标准绑定的特性
    43.5.3 Web套接字
    43.6 宿主
    43.6.1 自定义宿主
    43.6.2 WAS宿主
    43.6.3 预配置的宿主类
    43.7 客户端
    43.7.1 使用元数据
    43.7.2 共享类型
    43.8 双工通信
    43.8.1 双工通信的协定
    43.8.2 双工通信的服务
    43.8.3 双工通信的客户端应用程序
    43.9 路由
    43.9.1 示例应用程序
    43.9.2 路由接口
    43.9.3 WCF路由服务
    43.9.4 为失败使用路由器
    43.9.5 改变协定的桥梁
    43.9.6 过滤器的类型
    43.10 小结

    第44章 WCF数据服务
    44.1 概述
    44.2 包含CLR对象的自定义宿主
    44.2.1 CLR对象
    44.2.2 数据模型
    44.2.3 数据服务
    44.2.4 驻留服务
    44.2.5 其他服务操作
    44.3 HTTP客户端应用程序
    44.4 使用WCF数据服务和ADO.NET Entity Framework
    44.4.1 ASP.NET宿主和EDM
    44.4.2 使用WCF数据服务客户库
    44.5 小结

    第45章 Windows WF 4
    45.1 工作流概述
    45.2 Hello World示例
    45.3 活动
    45.3.1 If活动
    45.3.2 InvokeMethod活动
    45.3.3 Parallel活动
    45.3.4 Delay活动
    45.3.5 Pick活动
    45.4 自定义活动
    45.4.1 活动的验证
    45.4.2 设计器
    45.4.3 自定义复合活动
    45.5 工作流
    45.5.1 实参和变量
    45.5.2 WorkflowApplication
    45.5.3 存放WCF工作流
    45.5.4 工作流的版本
    45.5.5 驻留设计器
    45.6 小结

    第46章 对等网络
    46.1 P2P网络概述
    46.1.1 客户端-服务器体系结构
    46.1.2 P2P体系结构
    46.1.3 P2P体系结构的挑战
    46.1.4 P2P术语
    46.1.5 P2P解决方案
    46.2 PNRP
    46.3 构建P2P应用程序
    46.4 小结

    第47章 消息队列
    47.1 概述
    47.1.1 使用消息队列的场合
    47.1.2 消息队列功能
    47.2 Message Queuing产品
    47.3 消息队列体系结构
    47.3.1 消息
    47.3.2 消息队列
    47.4 Message Queuing管理工具
    47.4.1 创建消息队列
    47.4.2 消息队列属性
    47.5 消息队列的编程实现
    47.5.1 创建消息队列
    47.5.2 查找队列
    47.5.3 打开已知队列
    47.5.4 发送消息
    47.5.5 接收消息
    47.6 课程订单应用程序
    47.6.1 课程订单类库
    47.6.2 课程订单消息发送程序
    47.6.3 发送优先级和可恢复的消息
    47.6.4 课程订单消息接收应用程序
    47.7 接收结果
    47.7.1 确认队列
    47.7.2 响应队列
    47.8 事务队列
    47.9 消息队列和WCF
    47.9.1 带数据协定的实体类
    47.9.2 WCF服务协定
    47.9.3 WCF消息接收应用程序
    47.9.4 WCF消息发送应用程序
    47.10 消息队列的安装
    47.11 小结
查看详情
系列丛书 / 更多
C#高级编程(第8版)
C#入门经典(第6版)
[美]Karli、Jacob Vibe、Jon D Reid 著;齐立波、黄俊伟 译
C#高级编程(第8版)
Visual C++ 2013入门经典(第7版)
[美]霍尔顿(Horton I.) 著;李周芳、江凌 译
C#高级编程(第8版)
WPF 编程宝典:使用 C# 2012 和 .NET 4.5
[美]麦克唐纳(Matthew Macdonald) 著;王德才 译
C#高级编程(第8版)
ASP.NET MVC 4 高级编程:ASP.NET MVC 4高级编程
[美]加洛韦(Jon Galloway)、[美]Phil、[美]Brad Wilson 著;孙远帅、邹权 译
C#高级编程(第8版)
.NET开发经典名著:ASP.NET Core应用开发
James Chambers, Sim David Paquette 作者
C#高级编程(第8版)
.NET开发经典名著:C# 2012数据库编程入门经典(第5版)
[美]阿加瓦尔(Vidya Vrat Agarwal) 著;沈刚、谭明红 译
C#高级编程(第8版)
ASP.NET 4.5 入门经典(第7版)
[美]Imar Spaanjaars 著;刘楠、陈晓宇 译
C#高级编程(第8版)
ASP.NET 4.5数据库入门经典(第3版)
[美]Sandeep、[美]Damien Foggon 著;王榕、蔡松伯 译
C#高级编程(第8版)
ASP.NET 4.5 高级编程(第8版)
[美]盖洛德(Jason N.Gaylord)、[美]Pranav、[美]Todd Miranda 著;李增民、苗荣 译
C#高级编程(第8版)
.NET开发经典名著:Visual Studio 2012 高级编程(第4版)
[美]约翰逊(Johnson.B.) 著;张卫华、裴洪文 译
相关图书 / 更多
C#高级编程(第8版)
C#从入门到精通(第7版)
明日科技
C#高级编程(第8版)
C#程序设计实验指导与习题测试(第4版)
余青松;江红
C#高级编程(第8版)
C#程序设计
路炜
C#高级编程(第8版)
C#编程开发实战(微课视频版)
郭佳佳;涂振;陈林
C#高级编程(第8版)
C#可视化程序设计案例教程 第5版
刘培林 史荧中 刘贵锋
C#高级编程(第8版)
C#与.NET 6开发从入门到实践
敖瑞
C#高级编程(第8版)
C#高级编程(第12版)
[奥地利]克里斯琴·内格尔(Chrisitian Nagel) 著;李铭 译
C#高级编程(第8版)
C#面向对象程序设计教程(微课视频版)
夏磊;仲宝才;张翀
C#高级编程(第8版)
C#程序设计案例教程
李攀
C#高级编程(第8版)
C#函数式编程(第2版)
[美]恩里科·博南诺(Enrico Buonanno) 著;张骏温 译
C#高级编程(第8版)
C#.NET项目开发案例教程(微课视频版)
陈建国;王莹;张锦;王如龙
C#高级编程(第8版)
C#程序设计(第2版)
刘君瑞;姜学锋
您可能感兴趣 / 更多
C#高级编程(第8版)
孩子,把你的手给我1:怎么说孩子才爱听,怎么教孩子才肯学?帮助每一位3-12岁孩子的父母结束与孩子的所有冲突!
[美]海姆·G.吉诺特
C#高级编程(第8版)
怎样做成大事
[美]丹·加德纳(Dan Gardner) 著;贾拥民 译;湛庐文化 出品;[丹麦]傅以斌(Bent Flyvbjerg)
C#高级编程(第8版)
1200年希腊罗马神话
[美]伊迪丝·汉密尔顿
C#高级编程(第8版)
爱情心理学(新编本)
[美]罗伯特·J. 斯腾伯格 (美)凯琳·斯腾伯格 倪爱萍 译
C#高级编程(第8版)
黄金圈法则
[美]西蒙·斯涅克 著;磨铁文化 出品
C#高级编程(第8版)
汤姆·索亚历险记 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]马克 吐温
C#高级编程(第8版)
富兰克林自传 名家全译本 改变无数人命运的励志传奇 埃隆马斯克反复推荐 赠富兰克林签名照及精美插图
[美]本杰明·富兰克林 著;李自修 译
C#高级编程(第8版)
意大利文艺复兴新艺术史
[美]迈克尔·韦恩·科尔 著;[美]斯蒂芬·J·坎贝尔;邵亦杨
C#高级编程(第8版)
汤姆素亚历险记:中小学生课外阅读快乐读书吧 儿童文学无障碍有声伴读世界名著童话故事
[美]马克·吐温
C#高级编程(第8版)
老人与海 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]海明威
C#高级编程(第8版)
国际大奖图画书系列 共11册(小老鼠的恐惧的大书,大灰狼,红豆与菲比,别烦我,下雪了 ,穿靴子的猫 ,先有蛋,绿 ,特别快递,如果你想看鲸鱼 ,一个部落的孩子 ) 麦克米伦世纪
[美]莱恩·史密斯 (英)埃米莉·格雷维特 (美)劳拉·瓦卡罗·等/文 (英)埃米莉·格雷维特 等/图 彭懿 杨玲玲 阿甲 孙慧阳 白薇 译
C#高级编程(第8版)
C#高级编程(第9版) C# 5.0 & .NET 4.5.1
[美]Christian、Jay、Morgan Skinner 著;李铭 译