目 录
第1章 .NET Framework基础 1
准备工作 1
第1课 使用值类型 2
内置的值类型 2
如何声明值类型变量 4
如何创建用户定义的类型 5
如何创建枚举 7
练习:声明和使用值类型 8
课程小结 11
复习题 11
第2课 使用通用引用类型 13
什么是引用类型 13
比较引用类型和值类型的行为 13
内置的引用类型 14
字符串与StringBuilder 15
如何创建数组并对数组排序 16
如何使用流 17
如何抛出和捕获异常 18
练习:使用引用类型 20
课程小结 24
复习题 24
第3课 构造类 26
什么是继承 26
什么是接口 27
什么是分部类 30
什么是泛型 30
事件 34
什么是特性 36
什么是类型转发 38
练习:创建派生类和使用委托 38
课程小结 41
复习题 41
第4课 类型之间的转换 43
Visual Basic和C#中的类型转换 43
什么是装箱和拆箱 44
如何在自定义类型中实现类型转换 45
练习:安全地执行转换 47
课程小结 48
复习题 48
本章复习要点 50
本章小结 50
关键术语 50
案例 51
推荐练习 52
模拟测试 52
第2章 输入/输出 53
准备工作 53
第1课 使用文件系统 54
枚举驱动器 54
管理文件和文件夹 54
监视文件系统 56
练习:使用文件系统 58
课程小结 61
复习题 61
第2课 文件和流的读取与写入 63
读取和写入文本文件 63
读取和写入二进制文件 64
读取和写入字符串 65
使用MemoryStream 65
使用BufferedStream 66
使用压缩流 66
使用独立存储区 68
练习:使用流 70
课程小结 73
复习题 73
本章复习要点 75
本章小结 75
关键术语 75
案例 75
推荐练习 76
模拟测试 77
第3章 文本的搜索、修改和编码 79
准备工作 79
第1课 编写正则表达式 80
如何使用正则表达式进行模式匹配 80
如何匹配简单文本 82
如何在特定的位置匹配文本 82
如何提取匹配的数据 88
如何使用正则表达式替换子字符串 89
如何使用正则表达式约束字符串
输入 90
练习:创建一个正则表达式求值器 91
课程小结 94
复习题 94
第2课 编码和解码 98
理解编码 98
使用编码类 99
如何检测所支持的代码页 100
如何在写入文件时指定编码类型 101
如何在读取文件时指定编码类型 101
练习:读写编码过的文件 102
课程小结 103
复习题 103
本章复习要点 105
本章小结 105
关键术语 105
案例 105
推荐练习 106
模拟测试 107
第4章 集合与泛型 109
准备工作 109
第1课 集合与字典 110
集合 110
字典 114
练习:创建购物车 116
课程小结 118
复习题 118
第2课 泛型集合 120
泛型概述 120
泛型SortedList<T,U>集合 121
在自定义类中使用泛型 121
Generic Queue<T> 和 Stack<T>
集合 122
泛型List<T>集合 123
练习:用泛型List<T>创建一个
购物车 125
课程小结 127
复习题 127
本章复习要点 132
本章小结 132
关键术语 132
案例 132
推荐练习 133
模拟测试 134
第5章 序列化 135
准备工作 135
第1课 对象的序列化 136
什么是序列化 136
如何序列化一个对象 137
如何反序列化一个对象 138
如何创建可序列化的类 140
选择序列化格式 143
如何使用SoapFormatter 144
如何管理SOAP序列化 144
序列化指南 145
练习:序列化和反序列化对象 145
课程小结 148
复习题 148
第2课 XML序列化 150
为什么使用XML序列化 150
如何使用XML序列化一个对象 151
如何使用XML反序列化一个对象 151
如何创建可以使用XML序列化
的类 152
如何管理XML序列化 152
如何遵守XML架构 155
如何序列化一个DataSet 156
练习:使用XML序列化 157
课程小结 159
复习题 159
第3课 自定义序列化 161
如何实现自定义序列化 161
响应序列化事件 163
如何基于上下文改变序列化 165
如何创建自定义格式化器 166
练习:实现自定义序列化 166
课程小结 167
复习题 168
本章复习要点 169
本章小结 169
关键术语 169
案例 169
推荐练习 170
模拟测试 171
第6章 图形 173
准备工作 173
第1课 绘制图形 174
System.Drawing命名空间 174
如何指定控件的位置和尺寸 177
如何指定控件的颜色 177
如何绘制线条和形状 178
如何自定义钢笔 181
如何填充形状 183
练习:创建用于绘制饼图的方法 185
课程小结 189
复习题 189
第2课 使用图像 192
Image和Bitmap类 192
如何显示图片 192
如何创建和保存图片 193
如何使用图标 194
练习:将饼图保存为图片 195
课程小结 195
复习题 196
第3课 格式化文本 198
如何将文本添加到图形 198
如何创建Font对象 198
如何写文本 199
如何控制文本的格式 200
练习:在图像上添加文本 202
课程小结 207
复习题 207
本章复习要点 209
本章小结 209
关键术语 209
案例 209
推荐练习 211
模拟测试 212
第7章 线程 213
准备工作 213
第1课 启动多个线程 214
线程概述 214
使用ThreadPool类 215
理解前台和后台线程 217
练习:使用多线程改进性能 218
课程小结 219
复习题 219
第2课 管理线程 221
启动和停止线程 221
线程状态 223
在线程间传递数据 224
同步访问资源 226
等待线程完成 234
练习:管理线程 236
课程小结 242
复习题 242
本章复习要点 246
本章小结 246
关键术语 246
案例 246
推荐练习 247
模拟测试 248
第8章 应用程序域和服务 249
准备工作 249
第1课 创建应用程序域 250
什么是应用程序域 250
AppDomain类 252
如何创建应用程序域 253
如何将程序集加载到应用程序
域中 254
如何卸载应用程序域 254
练习:创建应用程序域和加载
程序集 255
课程小结 256
复习题 256
第2课 配置应用程序域 258
如何使用应用程序域以受限的
特权启动程序集 258
如何配置应用程序域属性 260
练习:管理应用程序域特权 262
课程小结 263
复习题 263
第3课 创建Windows服务 265
什么是Windows服务 265
如何创建服务项目 266
如何实现服务 267
如何为服务创建安装项目 268
如何管理和控制服务 271
练习:创建、安装和启动一个用于
监视网站的服务 272
课程小结 276
复习题 277
本章复习要点 279
本章小结 279
关键术语 279
案例 279
推荐练习 281
模拟测试 282
第9章 安装和配置应用程序 283
准备工作 283
第1课 配置应用程序 284
.NET Framework应用程序配置 284
读取机器配置设置 289
创建自定义配置节 290
练习:持久存储配置设置 294
课程小结 296
复习题 296
第2课 配置.NET Framework 299
配置.NET Framework设置 299
使用Microsoft .NET Framework
2.0配置工具 301
练习:配置共享程序集 302
课程小结 303
复习题 303
第3课 安装应用程序 305
创建自定义安装程序 305
练习:安装应用程序 307
课程小结 310
复习题 310
本章复习要点 312
本章小结 312
关键术语 312
案例 312
推荐练习 313
模拟测试 314
第10章 日志和系统管理 315
准备工作 315
第1课 用日志记录应用程序状态 316
读取和写入事件 316
用日志记录调试和跟踪信息 319
练习:使用事件日志 322
课程小结 326
复习题 326
第2课 使用性能计数器 328
监视性能计数器 328
添加自定义性能计数器 330
提供性能计数器数据 331
练习:提供性能数据 332
课程小结 335
复习题 336
第3课 管理计算机 337
检查进程 337
访问管理信息 338
练习:创建一个闹钟 344
课程小结 347
复习题 347
本章复习要点 349
本章小结 349
关键术语 349
案例 349
推荐练习 351
模拟测试 352
第11章 应用程序安全 353
准备工作 353
第1课 理解CAS 354
什么是CAS 354
CAS的元素 355
什么是安全策略 360
CAS如何适用于操作系统安全 361
如何使用.NET Framework 2.0配置
工具配置CAS 362
如何使用代码访问安全策略工具 366
练习:配置CAS 370
课程小结 372
复习题 373
第2课 使用声明型安全保护程序集 374
使用CAS程序集声明的原因 374
与CAS权限相关的类 375
程序集权限声明的类型 376
如何创建程序集声明 377
程序集声明使用指南 379
练习:使用程序集权限请求 379
课程小结 380
复习题 381
第3课 使用声明型和命令型安全保护
方法 385
方法权限请求的类型 385
方法权限请求的使用指南 386
要求权限的技巧 387
限制权限的技巧 391
如何放宽权限并改善潜在性能 393
如何使用权限集 396
练习:使用CAS要求保护方法 396
课程小结 401
复习题 402
本章复习要点 404
本章小结 404
关键术语 404
案例 404
推荐练习 406
模拟测试 407
第12章 用户和数据安全 409
准备工作 409
第1课 用户的验证和授权 410
验证和授权概述 410
WindowsIdentity类 411
WindowsPrincipal类 413
PrincipalPermission类 415
如何使用声明型RBS要求限制
方法的访问 415
如何使用命令型RBS要求创建限制
访问部分逻辑的应用程序 417
如何实现自定义用户和角色 419
处理流中的验证异常 426
练习:为应用程序添加RBS 426
课程小结 429
复习题 430
第2课 使用访问控制列表 432
什么是随机访问控制列表 432
什么是安全访问控制列表 434
如何查看和配置程序集中的ACL 434
练习:使用DACL和继承 437
课程小结 438
复习题 438
第3课 加密和解密数据 440
使用对称密钥加密和解密数据 440
使用非对称密钥加密和解密数据 447
使用哈希验证数据完整性 452
文件的签名 456
练习:加密和解密文件 459
课程小结 462
复习题 463
本章复习要点 465
本章小结 465
关键术语 465
案例 466
推荐练习 467
模拟测试 468
第13章 COM互操作 469
准备工作 469
第1课 在.NET Framework中使用
COM组件 470
如何添加对COM库或类型库的
引用 470
如何使用类型库导入程序导入
类型库 471
如何使用DllImport调用非托管
DLL 471
如何使用Marshal类 473
如何传递结构体 474
如何实现回调函数 475
如何创建包装器类 477
练习:创建COM对象的实例 478
课程小结 479
复习题 479
第2课 在COM应用程序中使用.NET
类型 481
向COM应用程序公开.NET类型的
指南 481
互操作特性 481
如何使用类型库导出程序导出
类型库 483
如何注册程序集 483
如何映射HRESULT错误代码
和异常 484
如何管理封送 485
练习:向COM公开.NET
Framework类 486
课程小结 486
复习题 487
本章复习要点 488
本章小结 488
关键术语 488
案例 488
推荐练习 489
模拟测试 490
第14章 反射 491
准备工作 491
第1课 使用反射 492
反射概述 492
如何加载程序集 492
如何创建实例和调用方法 493
程序集特性 496
动态生成类型 498
练习:动态地加载和运行插件 500
课程小结 501
复习题 502
本章复习要点 504
本章小结 504
关键术语 504
案例 504
推荐练习 505
模拟测试 506
第15章 邮件 507
准备工作 507
第1课 创建电子邮件消息 508
创建和发送电子邮件的过程 508
如何创建MailMessage对象 509
如何附加文件 510
如何创建HTML电子邮件 511
练习:生成电子邮件消息 513
课程小结 515
复习题 516
第2课 发送电子邮件 518
如何发送消息 518
如何处理电子邮件异常 519
如何配置凭据 520
如何配置SSL 520
如何异步地发送消息 521
练习:发送电子邮件消息 522
课程小结 526
复习题 527
本章复习要点 528
本章小结 528
关键术语 528
案例 528
推荐练习 529
模拟测试 530
第16章 全球化 531
准备工作 531
第1课 为全球化格式化数据 532
设置区域性 532
如何为不同的区域性格式化输出 533
如何手动格式化数据 535
对象的排序和比较 539
执行不区分区域性的比较 542
如何创建自定义区域性 543
练习:浏览区域性 544
课程小结 546
复习题 546
本章复习要点 548
本章小结 548
关键术语 548
案例 548
推荐练习 549
模拟测试 549
答案 551
术语表 591