《VB.NET高级编程 第3版》PDF下载

  • 购买积分:23 如何计算积分?
  • 作  者:(美)Bill Evjen,(美)Billy Hollis等著;杨浩翻译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2005
  • ISBN:7302105995
  • 页数:852 页
图书介绍:本书内容包括VB.NET基础知识、ADO.NET实现数据访问,创建Web服务。

1.1 .NET概述 1

1.1.1 未来应用广泛而深邃的平台 1

目录 1

第1章 什么是Microsoft.NET 1

1.1.2 DNA和COM的缺陷 2

1.2 .NET Framework概述 4

1.3.1 主要的设计目标 5

1.3 公共语言运行库 5

1.3.4 公共类型系统 7

1.3.3 多语言集成和支持 7

1.3.2 元数据 7

1.4 .NET Class Framework 8

1.3.5 命名空间 8

1.5.2 Web窗体 10

1.5.1 Windows窗体 10

1.5 用户和程序接口 10

1.6 作为.NET“元语言”的XML 11

1.5.4 Web服务 11

1.5.3 控制台应用程序 11

1.9 .NET对VB的影响 12

1.8 永远不会改变的一些事实 12

1.7 COM的角色 12

1.10.2 减少了Internet开发的障碍 13

1.10.1 编程模型谱 13

1.10 .NET对我们的影响 13

1.12 小结 14

1.11 .NET的未来 14

1.10.3 预编写的功能库 14

1.10.4 部署更简单 14

2.1 Visual Studio.NET——入门 15

第2章 VB.NET和VS.NET简介 15

2.2.1 Solution Explorer窗口 17

2.2 Visual Studio.NET 17

2.2.2 命名空间 18

2.2.3 新代码窗口 19

2.2.4 Properties窗口 22

2.3.1 在代码中设置窗体属性 23

2.3 使用VB.NET 23

2.2.5 动态帮助 23

23.2 AssemblyInfo.vb文件 24

2.4 增强范例应用程序的功能 26

2.4.1 添加控件和事件处理程序 27

2.4.2 定制代码 28

2.4.3 构建配置 32

2.4.4 创建应用程序 34

2.5.1 任务列表 37

2.5 VS.NET的有用功能 37

2.5.3 Server Explorer 38

2.5.2 Command窗口 38

2.5.4 在Visual Studio.NET中记录和使用宏 39

2.6 小结 40

3.1.1 程序集 41

3.1 .NET应用程序的元素 41

第3章 公共语言运行库 41

3.1.3 类型 42

3.1.2 模块 42

3.2.1 对于版本化的更好支持 43

3.2 版本化和部署 43

3.3.1 更好的垃圾回收功能 44

3.3 内存管理 44

3.2.2 更好的部署 44

3.3.3 GC的优化 49

3.3.2 更快的对象内存分配 49

3.4.1 通用类型系统 51

3.4 跨语言的集成 51

3.4.3 对元数据的更好支持 53

3.4.2 元数据 53

3.4.4 属性 54

3.5 IL Disassembler 56

3.4.5 Reflection API 56

3.6 小结 57

4.1 值类型和引用类型的区别 58

第4章 变量和类型 58

4.2 值类型(结构) 60

4.3.1 Option Strict、Option Explicit和Option Compare 68

4.3 显式转换 68

4.3.2 执行显式转换 69

4.4 引用类型(类) 71

4.4.1 Object类 72

4.4.2 String类 73

4.4.3 DBNull类 75

4.4.4 数组 76

4.4.5 集合 78

4.5 参数传递 80

4.6 装箱 81

4.7 不再使用的关键字和方法 82

4.8 小结 83

第5章 对象语法综述 84

5.1.2 对象的组成 85

5.1.1 对象、类和实例 85

5.1 面向对象的术语 85

5.2 使用对象 88

5.2.1 对象的声明和实例化 89

5.2.4 前期及后期绑定 91

5.2.3 取消对象的引用 91

5.2.2 对象引用 91

5.3.1 创建基类 95

5.3 创建类 95

5.3.2 构造函数方法 111

5.3.3 终止和清除 112

5.4.1 重载方法 115

5.4 高级概念 115

5.4.2 重载构造函数方法 117

5.4.3 共享方法、变量和事件 119

5.4.4 委托 123

5.4.5 类和组件 128

5.5 小结 131

6.1 继承 132

第6章 继承和接口 132

6.2.1 对象接口 177

6.2 多接口 177

6.2.2 辅助接口 178

6.3 小结 184

7.1 抽象性 185

第7章 对象和组件的应用 185

7.2 封装性 187

7.3.2 实现多态性 190

7.3.1 方法签名 190

7.3 多态性 190

7.4.1 使用继承的场合 200

7.4 继承 200

7.4.2 继承和多接口 203

7.4.3 进一步探讨 209

7.4.4 “脆弱”的基类问题 210

7.5 小结 213

8.1 命名空间的定义 214

第8章 命名空间 214

8.1.1 命名空间和引用 217

8.1.2 通用的命名空间 218

8.2.1 导入命名空间 221

8.2 导入命名空间并指定别名 221

8.3 创建自己的命名空间 222

8.2.2 为命名空间指定别名 222

8.4 小结 225

9.1 VB6中的错误处理 226

第9章 错误处理 226

9.2.1 异常的属性和方法 228

9.2 .NET中的异常 228

9.2.3 常用的异常类型 229

9.2.2 异常与VB6中Err对象的区别 229

9.3.1 Try、Catch和Finally关键字 230

9.3 VB.NET中的结构化异常处理关键字 230

9.3.2 Throw关键字 231

9.3.3 抛出新的异常 232

9.3.4 Exit Try语句 233

9.3.5 嵌套的Try结构 234

9.4 使用异常属性 236

9.4.2 InnerException属性和TargetSite属性 237

9.4.1 Message属性 237

9.4.3 Source和StackTrace属性 239

9.4.4 GetBaseException、GetHashCode和Equals方法 240

9.4.5 HelpLink属性 241

9.5 错误记录 242

9.5.1 事件日志 243

9.5.2 写入追踪文件 246

9.6 调试与测定性能 247

9.7 小结 251

第10章 在VB.NET中使用XML 253

10.1 XML简介 254

10.2 XML串行化 255

10.3 System.Xml文档支持 261

10.4 XML流样式的分析程序 261

10.4.1 写入XML流 262

10.4.2 读取XML流 265

10.4.3 使用MemoryStream对象 271

10.4.4 DOM 274

10.5 XSLT转换 280

10.5.1 不同XML标准之间的XSLT转换 284

10.6 ADO.NET 287

10.5.2 其他的System.Xml.Xsl类和接口 287

10.6.1 ADO.NET和SQL Server的内置XML特征 289

10.6.3 生成类型化的DataSet 291

10.6.2 类型化的DataSet对象 291

10.7 小结 296

第11章 用ADO.NET访问数据 297

11.1.1 ADO.NET组件 298

11.1 ADO.NET体系结构 298

11.1.2 ADO和ADO.NET之间的区别 299

11.2 .NET数据提供程序 302

11.2.2 Command对象 303

11.2.1 Connection对象 303

11.2.3 DataReader对象 304

11.2.4 DataAdapter对象 306

11.3 DataSet组件 309

11.2.6 OLE DB.NET数据提供程序 309

11.2.5 SQL Server.NET数据提供程序 309

11.3.3 ExtendedProperties 310

11.3.2 DataRelationCollection 310

11.3.1 DataTableCollection 310

11.3.4 创建和使用DataSet对象 311

11.3.5 ADO.NET的DataTable对象 315

11.5 在ADO.NET中使用存储过程 316

11.4 ADO.NET中的连接池 316

11.5.1 创建存储过程 317

11.5.2 调用存储过程 319

11.6 创建Data Access组件 321

11.6.1 构造函数 323

16.4.1 列表 324

11.6.2 属性 324

11.6.4 方法 325

11.6.3 存储过程XML结构 325

11.7 使用DataSet对象绑定DataGrid 338

11.8 小结 340

12.2 System.Windows.Forms命名空间 341

第12章 Windows窗体 341

12.1 Windows窗体的重要性 341

12.3 将窗体用作类 343

12.3.2 .NET中的窗体定义 344

12.3.1 通过Sub Main使用窗体 344

12.4.2 设置启动窗体 345

12.4 设计时的窗体 345

12.4.1 设计期间显示的网格 345

12.4.4 始终置顶—一TopMost属性 346

12.4.3 窗体边框 346

12.4.5 owned form 347

12.4.7 窗体的透明性 348

12.4.6 启动位置 348

12.4.10 滚动窗体 350

12.4.8 可视化继承 350

12.4.9 窗体尺寸限制的设置 350

12.6 控件 351

12.5 运行时的窗体 351

12.6.2 控件数组 352

12.6.1 以Tab键切换控件的顺序 352

12.6.3 自动调整控件的尺寸和位置 354

12.6.4 扩展的Provider控件 357

12.6.5 数据输入的验证 359

12.6.6 菜单 361

12.6.7 工具栏 365

12.6.8 通用对话框 367

12.6.9 拖放操作 369

12.6.10 Panel和GroupBox容器控件 371

12.6.11 标准Windows.Forms控件的总结 372

12.6.12 已撤销的控件 376

12.6.15 MDI窗体 377

12.6.13 使用ActiveX控件 377

12.6.14 其他方便的编程技巧 377

12.6.16 VB.NET中的MDI示例 379

12.6.17 对话框窗体 380

12.7 小结 382

13.1.2 现有的ActiveX控件 383

第13章 创建Windows控件 383

13.1 控件源 383

13.1.1 内置控件 383

13.2.1 从另一个控件继承 384

13.1.3 第三方控件 384

13.1.4 自定义控件 384

13.2 在.NET中开发自定义控件 384

13.3 从现有的控件中继承 385

13.2.2 建立复合控件 385

13.2.3 从头编写控件 385

13.3.2 创建一个仅能输入数值的文本框 386

13.3.1 进程的概述 386

13.3.4 为自定义控件增加额外的逻辑处理 389

13.3.3 修改自定义控件 389

13.3.5 为自定义控件创建属性 390

13.3.7 为继承的控件建立自定义事件 393

13.3.6 其他有用的特性 393

13.3.8 创建一个限制所选项数量的复选列表框 394

13.4.1 Control类 397

13.4 Control和UserControl基类 397

13.5 复合的UserControl 399

13.4.2 UserControl类 399

13.5.1 创建一个复合的UserControl 400

13.5.4 提供子控件的属性 401

13.5.2 调整控件的大小 401

13.5.3 为控件设置最小尺寸 401

13.5.5 完成例子的步骤 402

13.6 从头建立控件 406

13.7 在工具箱上附加一个图标 412

13.8 小结 413

14.1.2 HelloWorld Web窗体 414

第14章 Web窗体 414

14.1 Web窗体 414

14.1.1 设置环境 414

14.2 剖析Web窗体 418

14.2.2 代码部分 419

14.2.1 模板的表示方式 419

14.3 一个更复杂的示例 420

14.4 ASP.NET Web窗体的处理流程 422

14.5 Web窗体中可用的控件 425

14.5.1 服务器端控件的概念 426

14.5.2 HTML服务器控件 427

14.5.3 ASP.NET服务器控件 428

14.5.4 验证控件 430

14.6.1 Web窗体的生存期 432

14.5.5 用户控件 432

14.6 Web窗体中的事件 432

14.6.2 事件类别 433

14.7 Web窗体与ASP 434

14.9 最后一个示例 436

14.8 在Web窗体之间传送控件 436

14.10 小结 449

15.1 创建自定义控件的原因 450

第15章 创建Web控件 450

15.3.1 Web用户控件 451

15.2 何时创建自己的控件 451

15.3 自定义Web控件的类型 451

15.3.2 子类控件 452

15.4 何时使用自定义的Web控件 453

15.3.3 复合控件 453

15.3.4 模板控件 453

15.5.1 建立一个简单的WUC 454

15.5 创建Web用户控件 454

15.5.2 把Web页面转换为WUC 459

15.5.3 把Web用户控件项添加到项目中 467

15.5.4 在Web用户控件中重用代码 470

15.5.6 Web用户控件和@Register指令 471

15.5.5 @Control指令 471

15.5.7 Web用户控件 472

15.5.8 扩展Web用户控件 484

15.6 创建子类控件 485

15.5.9 Web用户控件的其他功能 485

15.6.1 创建一个试验台项目 486

15.6.2 子类控件和Web自定义控件模板 487

15.6.3 Render方法 489

15.6.4 开发子类控件 491

15.7 小结 499

16.1 显示数据 500

第16章 数据绑定 500

16.1.1 保存所做更改 502

16.1.2 Update语句简述 505

16.2.1 一个DataGrid中有多个相关的表 507

16.2 主/从数据绑定 507

16.2.2 更有用的解决方案 511

16.3 窗体 514

16.3.1 在记录之间移动 517

16.3.2 保存改变的内容 520

16.4 什么数据可以进行绑定 524

16.4.2 对象的属性 525

16.5 小结 526

17.1 传统的COM 528

第17章 使用传统的COM和接口 528

17.2.1 传统的组件 529

17.2 现在使用的COM和.NET 529

1 7.2.2 .NET应用程序 532

17.2.3 调试 534

17.2.5 后期绑定 535

17.2.4 直接使用TlbImp 535

17.3 ActiveX控件 540

17.3.1 传统ActiveX控件 541

17.3.2 另一个.NET应用程序 543

17.3.3 再次调试 544

17.4.1 .NET组件 545

17.4 在COM中使用.NET组件 545

17.4.2 RegAsm 547

17.5 小结 550

17.4.3 TlbExp 550

18.1 事务处理 551

第18章 组件服务 551

18.2 事务处理组件 553

18.3.1 人工事务处理 566

18.3 事务处理的其他方面 566

18.3.4 其他情况 567

18.3.3 对象池 567

18.3.2 JIT 567

18.4.1 排队组件的范例 568

18.4 排队组件 568

18.4.2 使用排队组件进行事务处理 574

18.5 小结 575

19.1 线程的含义 576

第19章 线程 576

19.1.1 进程、应用程序域与线程 577

19.1.2 线程的调度 579

19.1.3 线程安全和线程亲和 580

19.1.4 何时使用线程 581

19.1.5 设计后台任务 582

19.2.1 概述 583

19.2 实现线程 583

19.2.2 线程选项 589

19.2.3 共享的数据 594

19.2.4 取消后台任务 613

19.3 小结 619

第20章 远程技术 620

20.1.1 基本术语 621

20.1 远程技术概述 621

20.1.2 SingleCall、Singleton和激活的对象 623

20.2 远程技术的实现 626

20.2.1 一个简单的例子 627

20.2.2 把IIS用作远程主机 636

20.2.4 基于接口的设计 641

20.2.3 使用Activator.GetObject 641

20.2.5 使用生成的代理 643

20.3 小结 644

21.1 Windows服务范例 645

第21章 Windows服务 645

21.3 与Windows服务交互 646

21.2 Windows服务的特性 646

21.4.1 用于Windows服务的.NET Framework类 647

21.4 创建Windows服务 647

21.5 用VB.NET创建Windows服务 650

21.4.2 Windows服务的其他类型 650

21.6 创建计数监视器服务 652

21.6.1 安装服务 653

21.6.2 启动服务 654

21.7.1 创建性能计数器 655

21.7 监视性能计数器 655

21.6.3 卸载服务 655

21.7.2 把计数器集成到服务中 656

21.7.3 修改性能计数器中的值 657

21.8.1 ServiceController类 658

21.8 与服务通信 658

21.8.2 把ServiceController集成到例子中 659

21.8.3 ServiceController的更多内容 660

21.9 定制命令 661

21.10.1 使用Eventlog编写事件 663

21.10 创建文件监视程序 663

21.10.2 创建FileSystemWatcher 664

21.11 调试服务 667

21.12 小结 670

22.1 Web服务简介 671

第22章 Web服务 671

22.2.2 应用程序的发展 672

22.2.1 网络角度 672

22.2 早期的体系结构设计 672

22.2.4 Web服务基础 673

22.2.3 通过Web合并Internet和应用程序 673

22.2.5 问题 674

22.2.7 Web服务的基础所忽略的问题 675

22.2.6 其他技术 675

22.3 建立Web服务 680

22.4 一个更真实的例子 682

22.5 返回各种数据集 686

22.6.1 System.Web.Services命名空间 688

22.6 VB.NET和System.Web.Services 688

22.6.2 System.Web.Services.Description命名空间 689

22.6.4 System.Web.Services.Protocols命名空间 690

22.6.3 System.Web.Services.Discovery命名空间 690

22.7 利用Web服务进行设计 691

22.7.4 XMLWeb服务的状态管理 692

22.7.3 Web服务代理 692

22.7.1 Web服务的作用 692

22.7.2 Web服务与其他协议和工具的组合 692

22.7.5 把DNS用作模型 693

22.8.1 加密套接字层 696

22.8 Web服务中的安全性 696

22.9.1 安全性方面的缺点 697

22.9 分布式体系结构的缺点 697

22.8.2 目录级安全性 697

22.8.3 其他类型的安全性 697

22.10 Web服务的发展前景 698

22.9.4 速度和连接性方面的缺点 698

22.9.2 状态方面的缺点 698

22.9.3 事务处理方面的缺点 698

22.11 小结 699

23.1 下载Internet资源 700

第23章 VB.NET和Internet 700

23.2 套接字 703

23.2.1 建立应用程序 704

23.2.2 创建Conversation窗口 706

23.2.3 发送消息 714

23.2.4 关闭应用程序 720

23.3 在应用程序中使用Internet Explorer 724

23.4 小结 731

第24章 .NET Framework中的安全性 732

24.1 安全性的概念与定义 733

24.2 System.Security.Permissions命名空间中的权限 734

24.2.2 基于角色的权限 736

24.2.1 代码访问权限 736

24.2.3 身份权限 738

24.3 管理代码访问权限 739

24.4 管理安全性策略 744

24.5 加密基础 753

24.6 小结 774

第25章 程序集和部署 775

25.1 程序集 775

25.2 清单 776

25.2.1 标识部分 777

25.2.2 引用的程序集 779

25.3 程序集和部署 779

25.3.1 应用程序私有的程序集 780

25.3.2 共享程序集 780

25.4 版本化问题 781

25.4.1 应用程序隔离 782

25.4.2 并行执行 782

25.4.3 自描述 783

25.4.4 版本策略 783

25.4.5 配置文件 784

25.5 应用程序部署 787

25.5.1 DLLHell 788

25.5.2 XCOPY部署 788

25.5.3 .NET以前的部署选项 789

25.6 Visual Studio.NET部署项目 791

25.6.1 项目模板 791

25.5.4 Visual Studio.NET中的应用程序部署 791

25.6.2 创建一个部署项目 793

256.3 创建部署项目的两个范例 793

25.7 修改部署项目 803

25.7.1 项目属性 803

25.7.2 File System编辑器 806

25.7.3 Registry编辑器 810

25.7.4 File Types编辑器 812

25.7.5 UserInterface编辑器 813

25.7.6 Custom Actions编辑器 815

25.7.7 Launch Conditions编辑器 817

25.8 构建 820

25.9 小结 821

第26章 可移式应用程序的开发 822

26.1 可移式Web应用程序 822

26.1.1 可移式应用程序的Web服务 823

26.1.2 可移式Web模板的局限性 823

26.1.3 创建可移式Web应用程序 825

26.1.4 可移式Web应用程序和.NET Compact Framework应用程序的区别 828

26.2 .NET Compact Framework简介 828

26.2.1 .NET Compact Framework的局限性 829

26.2.2 .NET Compact Framework特有的命名空间 832

26.2.3 可移式设备模拟器 832

26.3 第一个.NET Compact Framework应用程序 834

26.4 小结 841

A.1 转换为VB.NET 842

A.1.1 什么是兼容库 842

附录A 升级:使用Visual Basic兼容库 842

A.1.2 引用兼容库 843

A.1.3 升级工具 843

A.2.1 语法声明的改变 848

A.2.2 元素替换为方法 848

A.2 兼容库引用列表 848

A.2.3 数据类型的改变 849

A.2.4 布尔运算符的改变 850

A.2.5 类和接口的改变 850