第0章 新时代平台.NET 2
0.1 .NET新风貌 2
0.1.1 未来的互联网 2
0.1.2 新时代的应用程序开发 4
0.2 .NET提供的解决方案 4
0.3 提供更容易结合的环境 6
0.3.1 完整的.NET Enterprise服务程序 7
0.4 .NET Framework 8
0.4.1 Web Service 10
0.4.2 用户界面 10
0.4.3 数据存取 11
0.4.4 基础的Class 11
第1章 .NET应用程序结构 16
1.1 .NET应用程序的结构 16
1.1.1 Common Type System 18
1.1.2 Garbage Collector 25
1.2 更强大的开发工具和语言 26
1.2.1 密切支持面向对象 26
1.2.2 Visual Basic.NET 27
1.3 对互联网新标准的完全支持 28
1.3.1 XML 28
1.3.2 SOAP 33
第2章 Visual Studio.NET 38
2.1 建立新工程 38
2.2 程序开发 40
2.2.1 各窗口的公共使用方法 40
2.2.2 自动隐藏的窗口以及窗口标签 41
2.2.3 程序编写 43
2.2.4 各种窗口功能简介 46
2.3 编译 61
2.4 除错 62
2.4.1 Breakpoints 63
2.4.2 Watch 64
2.4.3 Call Stack 65
2.4.4 Immediate 66
2.4.5 Local 66
2.4.6 Autos 66
2.4.7 Me 67
2.5 版本管理 67
2.6 与SQL Server结合 74
2.6.1 管理SQL Server中的用户自定义对象 74
2.6.2 Stored Procedure除错 77
2.7 XML的支持 78
3.1 Visual Basic基础语法 84
第3章 Visual Basic.NET语法 84
3.2 定义变量、常量和数组 86
3.2.1 为变量命名 86
3.2.2 名称定义的惯例 86
3.2.3 利用Dim变量名称As数据类型做为设置 86
3.3 变量范围 87
3.3.1 保存、速度和效率 89
3.3.2 数字的精确性 89
3.4 控制流程 89
3.4.1 If...Then语句 90
3.4.2 IF...Then...Else语句 90
3.4.3 If...Then...ElseIf语句 92
3.4.4 Select Case语句简介 92
3.4.5 使用Select Case语句来分析范围 94
3.4.6 使用Select Case来分析返回值 94
3.4.7 For...Next语句 95
3.4.8 跳出一个循环 96
3.4.9 Do...Loop结构简介 96
3.4.10 Do...Loop While 97
3.4.11 Do...Loop Until 97
3.4.12 Do While...Loop 98
3.4.13 Do Until...Loop 98
3.5 了解函数种类 99
3.5.1 使用Sub函数 100
3.5.2 使用Function函数 100
3.6 Visual Basic.NET改版的语法 101
3.7 在Visual Basic.NET中Class的属性编写 102
3.8 Subroutines和Functions 105
3.8.1 方法调用的语法改变 105
3.9 完整的数据类型范围 106
3.8.3 使用Return语法 106
3.8.2 参数传递默认为ByVal 106
3.10 结构化例外处理 108
3.11 使用正确的数据类型 110
3.11.1 整型和长整型数据类型的改变 110
3.11.2 转变到正确的数据类型 110
3.12 用户自定义数据结构 111
3.13 Visual Basic.NET新增功能 111
3.14 Assemblies 112
3.15 新的简单设置语法 113
3.16 Free Threading 113
3.17 Delegate 114
第4章 .NET Class 120
4.1 Class Library的现况 120
4.2 Namespace 121
4.3 .NET Class整体结构 123
4.3.1 System Narnespace 124
4.3.2 System Type 126
4.3.3 System.Object Class 127
4.3.4 System.Exception Class 128
4.3.5 文件和目录的操作 136
第5章 面向对象 148
5.1 封装与Classes 148
5.1.1 建立Class 148
5.1.2 Class和Namespace 151
5.1.3 建立Class Library 153
5.2 成员 155
5.2.1 Fields 155
5.2.2 方法 157
5.2.3 属性 159
5.3 继承 160
5.2.4 事件 160
5.3.1 Abstract Base Class 162
5.3.2 使用Me关键字 165
5.3.3 使用MyBase来存取Base Class的方法 167
5.3.4 使用MyClass 170
5.3.5 Form的建立 173
5.3.6 Form的继承-利用继承来设计向导 176
5.3.7 事件的继承 185
5.4 构造器和析构器 186
5.4.1 使用Sub New()来建立参数化的构造器 188
5.4.2 使用Sub Destruct()当析构器 188
5.4.3 自行编写释放资源的方法 192
5.5 多形与接口 192
5.5.1 利用继承实现多形 192
5.5.2 利用接口实现多形 196
5.6.1 先期绑定与后期绑定 204
5.6 其他相关议题 204
5.6.2 跨语言的继承 207
第6章 用户界面——Windows Forms的设计 212
6.1 使用表单的目的 212
6.2 Windows Forms 213
6.2.1 Windows Forms的基本概念 213
6.2.2 Windows Forms的结构 214
6.3 画龙点睛——放入控件 219
6.3.1 利用工具在设计时放入控件 220
6.3.2 运行时期动态加入控件 223
6.3.3 表单与控件的互动 225
6.4 表单的万种风情 228
6.4.1 一般表单 229
6.4.2 对话框 235
6.4.3 MDI Form多文件窗口 245
6.5 表单的其他常见的行为 253
6.5.1 表单的切换 253
6.5.2 关闭表单 253
第7章 Windows Forms——控件的使用 258
7.1 一般常用控件 258
7.1.1 文本控件 258
7.1.2 按钮控件 272
7.2 常用对话框 276
7.2.1 FileDialog 277
7.2.2 FontDialog 281
7.2.3 ColorDialog 282
7.3 表单的美化 283
7.3.1 Menu控件的使用 283
7.3.2 ToolBar 290
7.3.3 StatusBar 293
7.4 其他高级控件 294
7.4.1 TreeView的使用 294
7.4.2 ListView 298
7.4.3 月历控件 301
第8章 ADO.NET数据存取 306
8.1 新一代的ADO.NET 306
8.1.1 支持OLE DB 306
8.1.2 离线存取 306
8.1.3 数据交换格式为XML 306
8.2 数据存取的基本概念 307
8.2.1 关于ADO 307
8.2.2 关于ADO.NET 308
8.3 ADO.NET与ADO的差别 312
8.4 ADO.NET对象的使用 312
8.4.1 Connection对象 313
8.4.2 Command对象 316
8.4.3 DataSet对象 321
8.4.4 DataView对象 324
8.4.5 DataReader对象 326
8.5 控件与数据绑定 328
8.5.1 简单的控件数据绑定 328
8.5.2 复杂的控件数据绑定 329
8.5.3 表单的数据绑定管理 334
8.6 添加、删除、修改的处理 340
8.6.1 直接使用SQL命令 341
8.6.2 通过Update方法 341
8.7 ADO Recordset在.NET中的解决方案 344
8.7.1 建立Recordset并转为DataTable的类别编写 345
8.7.2 使用DataGrid试试看 347
9.1 ASP需要改良的地方 352
第9章 WEB应用程序开发 352
9.2 Web Form简介 353
9.3 服务器控件 361
9.3.1 HTML服务器控件 361
9.3.2 ASP.NET服务器控件 362
9.3.3 简单的数据绑定 370
9.3.4 自定义服务器控件 373
9.4 与数据绑定 377
9.4.1 建立DataGrid 377
9.4.2 自定义列标题、换页 378
9.4.3 数据查询 380
9.4.4 添加数据 381
9.4.5 删除数据 383
9.4.6 修改数据 384
9.5 Web Service 388
9.5.1 Web Service相关文件类型与SCL 389
9.5.2 简单的源代码范例 390
9.5.3 使用Web Service 391
第10章 升级到Visual Basic.NET 396
10.1 为何Visual Basic.NET与前版无法100%兼容 396
10.2 升级到Visual Basic.NET 396
10.2.1 升级报告和注解 399
10.2.2 同时使用Visual Basic 6.0和Visual Basic.NET 400
10.3 建议的结构 400
10.3.1 以浏览器为基础的应用程序 400
10.3.2 Client/Server结构 401
10.3.3 单层应用程序 402
10.3.4 数据存取 403
10.4 源代码升级 403
10.4.1 Variant转成Object 403
10.4.3 属性语法 404
10.4.2 Integer转成Short 404
10.4.4 Visual Basic Forms转成Windows Forms 405
10.4.5 接口 405
10.5 编写程序的建议 405
10.5.1 使用先期绑定 405
10.5.2 使用Date来保存日期 407
10.5.3 不要使用没有参数的默认属性 408
10.5.4 使用AND/OR/NOT做布尔比较 409
10.5.5 避免Null Propagation 413
10.5.6 使用以零为起始的数组 413
10.5.7 使用常量字符串取代真实的值 414
10.5.8 数组及用户自定义类型内的固定长度字符串 415
10.6 一些避免使用的传统特色 416
10.7 调用Win32 API 417
10.8 Form所使用的一些控件 423
10.9 Visual Basic 6.0与Visual Basic.NET的差异 425
10.10 从Visual Basic.NET调用COM对象 428
10.11 从前版的Visual Basic调用Visual Basic.NET所编写的对象 432
第11章 高级议题 436
11.1 Thread 436
11.2 GDI+ 440
11.2.1 产生画笔与画布 441
11.2.2 简易的绘图与保存 442
11.3 使用Performance Counter 443
11.4 写到Event Log 443
11.5 深入剖析.NET的编译程序 451
11.6 Remoting 458
11.6.1 建立Remoting的对象 460
11.6.2 建立Host应用程序 461
11.6.3 测试 464
11.6.4 调用Remoteing服务的用户程序 465