第1章 初识VB.NET 1
1.1 .NET环境 2
1.1.1 .NET系统要求 3
1.1.2 其他问题 5
4.1.2 创建命名空间 7
1.1.3 安装和配置示例应用程序 8
1.1.4 配置远程IIS服务器 9
1.2 从Hello World入手 10
1.3 本章小结 13
第2章 .NET Framework 14
2.1 什么是.NET 14
2.1.1 一个涉及面广、功能强大的平台 15
2.1.2 NET Enterprise Servers的角色 15
2.1.3 DNA和COM所存在的问题 16
2.1.5 .NET Framework概述 18
2.1.4 .NET的起源 18
2.2 公共语言运行库 19
2.2.1 设计的主要目标 20
2.2.2 元数据 22
2.2.3 多语言集成和支持 23
2.2.4 通用类型系统 24
2.2.5 命名空间 26
2.2.6 .NET应用程序的结构 27
2.2.7 部署和执行 28
2.3 下一层——.NET Class Framework 30
2.4 用户界面和程序接口 31
2.4.1 Windows Forms 32
2.4.2 Web Forms 32
2.4.3 控制台应用程序 33
2.4.4 Web服务 33
2.6 COM的角色 34
2.5 作为.NET“元语言”的XML 34
2.8 其他优点 35
2.7 DNA的角色 35
2.9 第一步——Visual Studio.NET 36
2.10 .NET对Visual Basic的改变 36
2.11 .NET对开发人员的影响 37
2.11.1 编程模型 37
2.11.2 减少了Internet开发的障碍 37
2.11.3 库的预编写功能 38
2.11.4 更简单的部署 38
2.12 本章小结 38
第3章 新的IDE特征 39
3.1 Hello World程序 39
3.1.1 窗体的声明、初始化以及终止 40
3.1.2 Windows窗体设计器生成的代码 42
3.1.3 事件处理程序代码 47
3.2 新的IDE特征 49
3.2.1 Start Page选项卡 50
3.2.2 停靠窗口 50
3.2.3 主窗口 52
3.2.4 宏支持 65
3.2.5 集成调试 65
3.3 本章小结 67
第4章 语言和语法 68
4.1 命名空间 68
4.1.1 使用命名空间 70
4.1.3 Microsoft.VisualBasic命名空间 73
4.2 语言和语法的变化 73
4.2.1 Option语句 73
4.2.2 数据类型的变化 74
4.2.3 变量声明的变化 79
4.2.4 数组的变化 81
4.2.5 用户自定义数据类型的变化 83
4.2.6 集合的变化 84
4.2.7 新的算术运算符 87
4.2.8 中断If...Then语句 87
4.2.9 使用保留字作为过程的名称 88
4.2.10 取消Set语句 88
4.2.11 属性例程的变化 89
4.2.12 结构化错误处理 91
4.2.13 过程的语法变化 96
4.2.14 事件处理的变化 99
4.2.15 不重要的、废弃的已不受支持的VB语法 102
4.3 委托 103
4.4 属性 104
4.5 本章小结 105
第5章 Windows用户界面的性能 106
5.1 Windows Forms的重要性 106
5.2 Windows Forms的基础知识 107
5.3 Windows Forms的体系结构 108
5.4 比较Windows Forms和VB6 Forms 110
5.4.1 对Windows Forms使用可视化设计器 111
5.4.2 取消和默认按钮的窗体属性 112
5.4.3 定位和布局 112
5.4.4 对话框的区别 113
5.5 Windows Forms的新性能 117
5.5.1 改变窗体的形状 117
5.5.2 改变窗体外观的新属性 118
5.5.3 专用窗体 119
5.6 Windows Forms中的控件 120
5.6.1 控件的新属性 120
5.6.2 在运行时添加新控件 122
5.7 重要控件的总结 123
5.7.1 新的控件 124
5.7.2 对现有控件的修改 133
5.8 多文档界面(MDI)窗体 134
5.8.1 创建一个MDI父窗体 134
5.8.2 MDI父窗体的不同 134
5.8.3 MDI子窗体的不同 135
5.8.4 在MDI父窗体中安排子窗口 135
5.8.5 Visual Basic.NET中的一个MDI范例 135
5.9 Windows Forms中的继承 137
5.10 GDI+ 140
5.10.1 System.Drawing命名空间 140
5.10.2 在Windows Form中使用GDI+ 141
5.10.3 与VB6及其早期版本相比的变化 145
5.11.1 继承自现有的控件 146
5.11 创建定制的Windows Forms控件 146
5.11.2 复合控件 148
5.11.3 从Control类中继承新控件 148
5.12 本章小结 148
第6章 面向对象的新功能 149
6.1 什么是面向对象 149
6.2 对象与组件的关系 150
6.3 Visual Basic.NET的OO实现 150
6.3.1 创建类 151
6.3.2 对象的生命周期 157
6.3.3 与对象交互 163
6.3.4 共享的类成员 168
6.3.5 继承 171
6.3.6 接口 189
6.4.2 创建C#子类 193
6.4 跨语言继承 193
6.4.1 创建Visual Basic.NET基类 193
6.4.3 创建客户应用程序 194
6.5 可视化继承 195
6.6 本章小结 195
第7章 Web功能 197
7.1 ASP存在的问题 198
7.2 Web Forms概述 198
7.2.1 运行的Web Form 199
7.2.2 后台代码 202
7.2.3 作为运行库引擎的ASP.NET 202
7.2.4 分析Web Form 202
7.2.5 Web Forms事件模型 205
7.3 Web Forms的布局 208
7.4.1 需要服务器控件的原因 209
7.4 服务器控件 209
7.4.2 ASP.NET服务器控件 210
7.4.3 验证控件 211
7.4.4 定制Web Form服务器控件 213
7.5 Web Forms中的数据绑定 215
7.6 最终的例子——使用Web Forms的小应用程序 215
7.7 用Web.config配置应用程序 219
7.7.1 ASP.NET Web站点的安全性 219
7.7.2 状态管理选项 221
7.8 Web服务概述 221
7.8.1 Web服务的用途 222
7.8.2 了解SOAP协议 222
7.8.3 在Visual Basic.NET中创建Web服务 223
7.8.4 在Visual Basic.NET中使用Web服务 225
7.8.5 创建和使用Web服务 226
7.9 本章小结 227
7.8.6 Web服务的安全性 227
第8章 数据访问 228
8.1 ADO.NET和ADO 229
8.2 ADO.NET——重要的概念 230
8.2.1 ADO.NET类的位置 230
8.2.2 替代Recordset 230
8.2.3 DataSet的定义 231
8.2.4 DataSet的数据流概述 231
8.3 用于连接操作的数据提供者 233
8.3.1 .NET包含的提供者 233
8.3.2 数据提供者实现的类 234
8.4 ADO.NET类如何协同工作 242
8.5 DataSet的结构 242
8.5.1 DataTable 243
8.5.2 DataColumn 244
8.5.3 DataRow 245
8.5.4 Constraints 247
8.5.5 DataRelation 248
8.6 使用DataSet 250
8.6.1 在DataTable中添加行 250
8.6.2 在DataTable中查找特定行 250
8.6.3 删除DataTable中的行 251
8.6.4 手工创建DataSet 252
8.6.5 使用DataAdapter向导创建DataSet 253
8.7 使用DataViews 258
8.7.1 使DataView获得数据子集 259
8.7.2 排序DataView 260
8.8 Typed DataSet 260
8.9 在ADO.NET中使用存储过程 262
8.9.1 Command类的存储过程 262
8.9.2 使用DataAdapters的存储过程 263
8.10 ADO.NET的异常类 264
8.11 数据绑定 265
8.11.1 列表框和组合框的数据绑定 265
8.11.2 将数据绑定到对象集合 266
8.11.3 将数据绑定到任何属性上 266
8.12 通过ADO.NET访问XML 267
8.12.1 保存数据的变化 268
8.12.2 在XML中维持DataSet 268
8.13 通过DOM访问XML 269
8.14 使用ADO.NET的一些综合指南 269
8.14.1 什么时候使用DataReader 269
8.14.2 什么时候使用DataSet 269
8.15 什么时候需要传统ADO 270
8.15.1 保守式并发 270
8.14.3 用ADO.NET改变事务层 270
8.15.2 需要服务器端游标的应用程序 271
8.16 本章小结 271
第9章 高级主题 272
9.1 中间层组件 272
9.1.1 .NET Remoting 273
9.1.2 Enterprise Services 286
9.1.3 使用Microsoft消息队列(MSMQ) 290
9.2 .NET Threading 293
9.2.1 协同线程工作 294
9.2.2 线程生存期 298
9.2.3 与当前线程交互 299
9.2.4 给线程传递数据 299
9.2.5 异步处理 301
9.3 控制台应用程序 308
9.4.2 实现打印 311
9.4 新打印模式 311
9.4.1 PrintDocument及相关对象 311
9.5 用VB创建一个Windows NT/2K服务 317
9.5.1 创建一个Windows服务 318
9.5.2 安装服务 321
9.6 命令行选项 325
9.6.1 vbc命令行参数 325
9.6.2 在bin目录中的工具描述 326
9.7 本章小结 330
第10章 安装及部署 331
10.1 构造配置 331
10.2 可再分布的.NET Framework 333
10.3 XCOPY部署 333
10.3.1 Windows应用程序 333
10.3.2 Web应用程序 334
10.4 正式安装 336
10.4.1 Windows应用程序 337
10.4.2 Web应用程序 342
10.5 自动部署 345
10.5.1 通过URL启动.NET程序 346
10.5.2 运用Shell程序 349
10.5.3 安全性考虑 353
10.6 本章小结 355
第11章 互操作性和迁移 356
11.1 COM/DCOM互操作性 356
11.1.1 从NET调用COM组件 357
11.1.2 从COM调用.NET组件 368
11.2 调用Windows API 372
11.3 使用迁移向导 377
11.4 本章小结 380