内容简介
第Ⅰ部分 语言结构和环境
第1章 Visual Studio 2012
1.1 Visual Studio 2012
1.2 Visual Basic的关键字和语法
1.2.1 控制台应用程序
1.2.2 从项目模板创建项目
1.2.3 Solution Explorer窗口
1.2.4 项目属性
1.2.5 Assembly Information屏幕
1.2.6 编译器设置
1.2.7 调试属性
1.2.8 引用
1.2.9 资源
1.2.10 设置
1.2.11 其他项目属性选项卡
1.3 PrOVB_VS2012项目
1.4 增强示例应用程序的功能
1.4.1 自定义代码
1.4.2 生成应用程序
1.4.3 重用第一个Windows窗体
1.5 Visual Studio 2012中的有用功能
1.5.1 任务列表
1.5.2 Server Explorer
1.5.3 类图
1.6 小结
第2章 公共语言运行库
2.1 框架配置文件和平台
2.1.1 客户端和完整框架配置文件
2.1.2 针对Metro的框架
2.1.3 Silverlight、Windows Phone以及其他应用程序
2.1.4 .NET 4.5可移植类库
2.2 .NET应用程序的组成元素
2.2.1 类型
2.2.2 模块
2.2.3 程序集
2.3 跨语言集成
2.3.1 通用类型系统
2.3.2 元数据
2.4 IL反汇编程序
2.5 内存管理
2.5.1 传统的垃圾回收机制
2.5.2 更快地为对象分配内存
2.5.3 垃圾回收器的优化
2.6 名称空间
2.6.1 什么是名称空间
2.6.2 名称空间与引用
2.6.3 常用的名称空间
2.6.4 导入名称空间并指定别名
2.6.5 为名称空间指定别名
2.6.6 在ASP.NET中引用名称空间
2.7 创建自己的名称空间
2.8 My关键字
2.8.1 My.Application名称空间
2.8.2 My.Computer名称空间
2.8.3 My.Resources名称空间
2.8.4 My.User名称空间
2.8.5 My.WebServices名称空间
2.9 扩展My名称空间
2.10 小结
第3章 对象和Vialial Basic
3.1 面向对象的术语
3.1.1 对象、类和实例
3.1.2 对象的组成
3.1.3 System.Object
3.2 使用Visual Basic类型
3.2.1 值类型和引用类型
3.2.2 基本类型
3.3 命令:条件语句
3.3.1 IfThen
3.3.2 比较运算符
3.3.3 Seloct Case
3.4 值类型(结构)
3.4.1 布尔类型
3.4.2 整数类型
3.4.3 无符号类型
3.4.4 小数类型
3.4.5 Char和Byte类型
3.4.6 DateTime类型
3.5 引用类型(类)
3.5.1 Object类
3.5.2 String类
3.5.3 DBNull类和IsDBNull()函数
3.6 参数传递
3.6.1 ParamArray
3.6.2 变量的作用域
3.7 使用对象
3.7.1 对象的声明和实例化
3.7.2 对象引用
3.7.3 前期绑定与后期绑定
3.7.4 数据类型转换
3.7.5 执行显式转换
3.8 创建类
3.8.1 基本类
3.8.2 处理事件
3.8.3 处理多个事件
3.8.4 WithEvents关键字
3.8.5 触发事件
3.8.6 声明和触发自定义事件
3.8.7 用WithEvents关键字接收事件
3.8.8 用AddHandler接收事件
3.8.9 构造函数方法
3.9 面向对象概念
3.9.1 重载方法
3.9.2 重载构造函数方法
3.9.3 共享方法、变量和事件
3.9.4 运算符重载
3.9.5 委托
3.10 小结
第4章 定制对象
4.1 继承
4.1.1 何时使用继承
4.1.2 实现继承
4.1.3 与基类、类及对象交互
4.1.4 构造函数
4.1.5 对象作用域
4.1.6 事件与继承
4.1.7 共享方法
4.1.8 创建抽象基类
4.2 多接口
4.2.1 对象接口
4.2.2 抽象接口
4.3 抽象
4.4 封装
4.5 多态性
4.5.1 方法签名
4.5.2 实现多态性
4.6 小结
第5章 高级语言结构
5.1 准备示例应用程序
5.2 lambda表达式
5.2.1 创建一个lambda表达式子例程
5.2.2 创建一个lambda表达式函数
5.3 使用lambda表达式
5.3.1 使用lambda表达式来处理事件
5.3.2 带有lambda表达式的LINQ
5.4 Async和Await
5.4.1 核心概念
5.4.2 使用Async和Await
5.5 迭代器
5.5.1 核心概念
5.5.2 使用迭代器
5.6 小结
第6章 异常处理和调试
6.1 System.Exception
6.2 处理异常
6.2.1 Try、Catch和Finally关键字
6.2.2 Throw关键字
6.2.3 Exit Try语句
6.2.4 使用异常属性
6.3 记录错误
6.3.1 事件日志
6.3.2 使用Trace和Debug对象
6.4 小结
第Ⅱ部分 业务对象和数据访问
第7章 数组、集合和泛型
7.1 数组
7.1.1 多维数组
7.1.2 UBound函数
7.1.3 ReDim语句
7.1.4 Preserve关键字
7.2 集合
7.2.1 循环语句
7.2.2 装箱
7.3 泛型
7.3.1 使用泛型
7.3.2 Nullable类型
7.3.3 泛型类型
7.3.4 泛型方法
7.4 创建泛型
7.4.1 泛型类型
7.4.2 泛型方法
7.4.3 约束
7.4.4 泛型和后期绑定
7.4.5 协变和逆变
7.5 小结
第8章 在Visual Basic中使用XML
8.1 XML简介
8.2 XML序列化
8.2.1 序列化
8.2.2 反序列化
8.2.3 源代码样式特性
8.3 System.Xml文档支持
8.3.1 XML流样式分析程序
8.3.2 文档对象模型(DOM)
8.4 LINQ to XML
8.4.1 LINQ to XML帮助对象
8.4.2 XML文本
8.4.3 查询XML文档
8.4.4 读写XML文档
8.5 XSL转换
8.5.1 使用XSLT转换不同的XML标准
8.5.2 System.Xml.Xsl中定义的其他类和接口
8.6 ASP.NET中的XML
8.6.1 XmlDataSource服务器控件
8.6.2 XmlDataSource控件的名称空间问题
8.6.3 Xml服务器控件
8.7 小结
第9章 ADO.NET和LINQ
9.1 ADO.NET的体系结构
9.2 ADO.NET的基本功能
9.2.1 ADO.NET的常见任务
9.2.2 ADO.NET的基本名称空间和类
9.2.3 ADO.NET组件
9.3 .NET数据提供程序
9.3.1 Connection对象
9.3.2 Command对象
9.3.3 通过Command对象使用存储过程
9.3.4 DataReader对象
9.3.5 异步执行命令
9.3.6 DataAdapter对象
9.3.7 SQL Server.NET数据提供程序
9.3.8 OLE DB.NET数据提供程序
9.4 DataSet组件
9.4.1 DataTableCollection对象
9.4.2 DataRelationCollection对象
9.4.3 ExtendedProperties属性
9.4.4 创建和使用DataSet对象
9.4.5 ADO.NET的DataTable对象
9.4.6 DataSet和DataTable对象的高级ADO.NET特性
9.5 使用通用提供程序模型
9.6 ADO.NET中的连接池
9.7 Transactions类和SystemTransactions名称空间
9.7.1 创建事务
9.7.2 创建资源管理器
9.8 小结
第10章 使用Entity Framework访问数据
10.1 对象关系映射
10.2 Entity Framework体系结构
10.2.1 概念模型
10.2.2 存储模型
10.2.3 映射模型
10.2.4 LINQ to Entities
10.2.5 ObjectContext
10.3 将对象映射到实体
10.3.1 简单映射
10.3.2 为多个对象使用一个表
10.3.3 更新模型
10.4 小结
第11章 服务(XML/WCF)
11.1 Web服务
11.1.1 如何组合起来
11.1.2 WCF服务的构成
11.2 向SOA迈出一大步
11.2.1 WCF的功能
11.2.2 协定和元数据
11.2.3 使用WS-协议
11.3 构建WCF服务
11.3.1 创建接口
11.3.2 使用接口
11.3.3 在控制台应用程序中包含WCF服务
11.3.4 查看WSDL文档
11.4 建立WCF使用者应用程序
11.4.1 添加服务引用
11.4.2 查看引用
11.4.3 配置文件的修改
11.4.4 编写使用代码
11.5 使用数据协定
11.6 名称空间
11.6.1 建立主机应用程序
11.6.2 建立使用者应用程序
11.6.3 查看HelloCustomerService的WSDL和架构
11.7 小结
第Ⅲ部分 特定主题与库
第12章 XAML软件包
12.1 所有XAML平台共享的功能
12.2 XAML标记语言
12.2.1 XAML的示例页面
12.2.2 元素的代码隐藏和命名
12.2.3 相关术语
12.2.4 UIElement和FrameworkElement类
12.2.5 常用元素
12.2.6 属性设置:特性语法和元素语法
12.2.7 在XAML中引用额外的名称空间
12.3 布局系统
12.3.1 计量单位
12.3.2 面板
12.3.3 调整元素的大小和布局
12.4 控件和内容
12.4.1 内容控件
12.4.2 内容模板的含义
12.4.3 Brushes
12.5 XAML中的资源
12.5.1 Resources属性
12.5.2 关于资源字典的更多内容
12.5.3 资源的范围
12.6 数据绑定
12.6.1 数据绑定:基本概念
12.6.2 绑定类和绑定表达式
12.6.3 DataContext
12.6.4 XAML元素之间的数据绑定
12.6.5 指定数据源的其他方法
12.6.6 属性更改通知
12.6.7 在绑定期间进行数据转换
12.6.8 处理绑定失败
12.6.9 复杂的绑定路径
12.6.10 在代码中使用数据绑定
12.7 数据模板和ItemControls
12.7.1 使用一些示例数据设置阶段
12.7.2 ItemControls
12.7.3 XAML ListBox
12.7.4 数据模板
12.7.5 数据模板中的数据绑定
12.7.6 在数据模板之间切换
12.7.7 使用ItemPanel更改ListBox项的布局
12.7.8 额外的IternControls
12.8 样式
12.8.1 什么是样式
12.8.2 确定样式的范围
12.8.3 隐式样式
12.8.4 BasedOn样式
12.8.5 ItemContainerStyle
12.9 控件模板
12.9.1 “无外观”控件
12.9.2 为CheckBox换肤
12.9.3 创建控件模板
12.10 小结
第13章 为Windows 8创建XAML应用程序
13.1 Windows 8中的XAML有何不同
13.1.1 缺少的元素
13.1.2 被Windows 8中同等功能所取代的旧元素
13.1.3 语法差异
13.1.4 将页面作为根可视化元素来使用
13.2 Windows 8 UI约定
13.3 UI/UX标准
13.3.1 应用程序与Windows 8操作系统之间的交互
13.3.2 无边框的应用程序
13.3.3 贴靠视图
13.3.4 字体和字体标准
13.3.5 应用程序中可视化元素的大小和布局
13.4 Windows 8中的新可视化元素
13.4.1 AppBar
13.4.2 ListView、GridView和FlipView控件
13.4.3 选取器
13.4.4 ProgressRing
13.4.5 ToggleSwitch
13.4.6 其他新元素
13.4.7 旧元素的新用法
13.5 在Visual Studio 2012中更改可视化设计器
13.5.1 更好的Resource选择器
13.5.2 常见和高级的属性类别
13.5.3 转换属性
13.5.4 动画
13.6 Visual Studio 2012中的应用程序模板
13.6.1 Split App模板
13.6.2 Grid App模板
13.6.3 布局意识页面
13.6.4 Common文件夹中的项目
13.6.5 StandardStyles.xaml
13.6.6 针对GridApp和SplitApp模板的在线文档
13.7 实现动态磁贴
13.8 实现约定
13.9 小结
第14章 使用ASP.NET、MVC、JavaScript和HTML开发应用程序
14.1 Visual Studio对ASP.NET的支持
14.1.1 网站和Web应用程序项目
14.1.2 Web服务器选项
14.2 服务器端开发
14.2.1 Web窗体
14.2.2 Web页面和Razor
14.3 ASP.NET MVC
14.4 客户端Web开发
14.5 使用HTML和JavsScript构建Windows 8样式的应用程序
14.6 小结
第15章 本地化
15.1 文化和区域
15.1.1 理解文化类型
15.1.2 线程
15.1.3 在ASP.NET中声明全局文化
15.1.4 在ASP.NET中使用文化设置
15.2 转换数值和操作
15.2.1 理解日期之间的区别
15.2.2 数字和货币的区别
15.2.3 理解排序的区别
15.3 ASP.NET资源文件
15.3.1 使用本地资源
15.3.2 Windows Store应用程序的本地化
15.4 小结
第16章 应用程序服务
16.1 为应用程序服务使用IIS
16.2 Windows服务
16.3 Windows服务的特性
16.4 与Windows服务进行交互
16.5 创建Windows服务
16.5.1 用于Windows服务的.NET Framework类
16.5.2 其他类型的Windows服务
16.6 在VB中创建Windows服务
16.7 创建文件监视器服务
16.7.1 创建Windows服务的解决方案
16.7.2 向服务添加.NET组件
16.7.3 安装服务
16.7.4 启动服务
16.7.5 卸载服务
16.8 与服务通信
16.8.1 ServiceController类
16.8.2 将ServiceController集成到示例中
16.8.3 ServiceController的更多内容
16.9 自定义命令
16.10 向服务传递字符串
16.11 调试服务
16.12 小结
第17章 程序集和反射
17.1 程序集
17.2 清单
17.2.1 程序集标识
17.2.2 引用的程序集
17.3 程序集与部署
17.3.1 应用程序私有的程序集
17.3.2 共享程序集
17.4 版本化问题
17.4.1 应用程序隔离
17.4.2 并行执行
17.4.3 自描述组件
17.4.4 版本策略
17.4.5 配置文件
17.5 反射的基础知识
17.5.1 Assembly类
17.5.2 获得当前加载的程序集
17.5.3 Type类
17.6 程序集的动态加载
17.6.1 Assembly类的LoadFrom方法
17.6.2 动态加载示例
17.6.3 传入程序集
17.7 小结
第18章 .NET Framework中的安全性
18.1 安全的概念与定义
18.2 Windows Store项目
18.3 System.Security.Permissions名称空间
18.3.1 代码访问权限
18.3.2 身份权限
18.3.3 基于角色的权限
18.4 管理代码访问权限集合
18.5 用户访问控制
18.6 定义应用程序的UAC设置
18.6.1 安全性工具
18.6.2 使用SecurityException类处理异常
18.7 加密基础
18.7.1 散列算法
18.7.2 加密散列算法
18.7.3 对称密钥加密算法
18.7.4 PKCS
18.8 小结
第19章 使用任务和线程进行并行编程
19.1 启动并行任务
19.1.1 System.Threading.Tasks.Parallel类
19.1.2 Parallel.Invoke
19.2 将串行代码转换为并行代码
19.2.1 检测热点
19.2.2 测试并行执行获得的速度提升
19.2.3 理解并行
19.3 并行循环
19.3.1 Parallel.For
19.3.2 Parallel.ForEach
19.3.3 退出并行循环
19.4 指定所期望的并行度
19.4.1 ParallelOptions
19.4.2 理解硬件线程和逻辑核心
19.5 创建和管理任务
19.5.1 System.Threading.Tasks.Task
19.5.2 理解任务的生命周期
19.5.3 使用任务并行化代码
19.5.4 从任务中返回值
19.5.5 编写并行代码
19.5.6 理解并发集合功能
19.5.7 将LINQ转换为PLINQ
19.6 小结
第20章 通过Windows 8 Windows Store部署XAML应用程序
20.1 Windows 8应用程序的新部署选项
20.1.1 WinRT应用程序的部署
20.1.2 开发人员许可证
20.1.3 使用Windows Store
20.2 在Windows Store中获取一个账户
20.2.1 Microsoft账户是必需的
20.2.2 Windows应用商店账户类型
20.2.3 获取账户所需的步骤
20.3 Windows Store中应用程序的要求
20.3.1 具体要求
20.3.2 一般要求
20.4 在Visual Studio 2012中使用Windows Store
20.4.1 Store菜单中的选项
20.4.2 创建应用程序包
20.4.3 查看应用程序是否满足要求
20.4.4 将应用程序部署到Windows Store
20.5 LOB应用程序的旁加载
20.5.1 打包和验证
20.5.2 为旁加载准备客户端计算机
20.5.3 旁加载操作
20.6 小结