• C#高级编程(第6版) 目录


    .Net系列
    C#高级编程(第6版)


    目    录

    第Ⅰ部分  C# 语 言
    第1章  .NET体系结构 2
    1.1  C#与.NET的关系 2
    1.2  公共语言运行库 3
    1.2.1  平台无关性 3
    1.2.2  提高性能 3
    1.2.3  语言的互操作性 4
    1.3  中间语言 5
    1.3.1  面向对象和接口的支持 6
    1.3.2  相异值类型和引用类型 6
    1.3.3  强数据类型 7
    1.3.4  通过异常处理错误 12
    1.3.5  特性的使用 13
    1.4  程序集 13
    1.4.1  私有程序集 14
    1.4.2  共享程序集 14
    1.4.3  反射 14
    1.5  .NET Framework类 15
    1.6  命名空间 16
    1.7  用C#创建.NET应用程序 16
    1.7.1  创建ASP.NET应用程序 16
    1.7.2  创建Windows窗体 18
    1.7.3  使用Windows Presentation
    Foundation(WPF) 18
    1.7.4  Windows控件 19
    1.7.5  Windows服务 19
    1.7.6  Windows Communication
    Foundation(WCF) 19
    1.8  C#在.NET企业体系结构中
    的作用 19
    1.9  小结 21
    第2章  C#基础 22
    2.1  引言 22
    2.2  第一个C#程序 23
    2.2.1  代码 23
    2.2.2  编译并运行程序 23
    2.2.3  详细介绍 24
    2.3  变量 26
    2.3.1  变量的初始化 26
    2.3.2  类型推断 27
    2.3.3  变量的作用域 28
    2.3.4  常量 30
    2.4  预定义数据类型 31
    2.4.1  值类型和引用类型 31
    2.4.2  CTS类型 33
    2.4.3  预定义的值类型 33
    2.4.4  预定义的引用类型 36
    2.5  流控制 38
    2.5.1  条件语句 38
    2.5.2  循环 42
    2.5.3  跳转语句 45
    2.6  枚举 46
    2.7  数组 47
    2.8  命名空间 48
    2.8.1  using语句 49
    2.8.2  命名空间的别名 50
    2.9  Main()方法 51
    2.9.1  多个Main()方法 51
    2.9.2  给Main()方法传送参数 52
    2.10  有关编译C#文件的更多内容 53
    2.11  控制台I/O 54
    2.12  使用注释 56
    2.12.1  源文件中的内部注释 56
    2.12.2  XML文档说明 56
    2.13  C#预处理器指令 58
    2.13.1  #define和 #undef 59
    2.13.2  #if, #elif, #else和#endif 59
    2.13.3  #warning和 # error 60
    2.13.4  #region和#endregion 60
    2.13.5  #line 61
    2.13.6  #pragma 61
    2.14  C#编程规则 61
    2.14.1  用于标识符的规则 61
    2.14.2  用法约定 62
    2.15  小结 68
    第3章  对象和类型 69
    3.1  类和结构 69
    3.2  类成员 70
    3.2.1  数据成员 70
    3.2.2  函数成员 71
    3.2.3  只读字段 83
    3.3  匿名类型 84
    3.4  结构 85
    3.4.1  结构是值类型 86
    3.4.2  结构和继承 87
    3.4.3  结构的构造函数 87
    3.5  部分类 87
    3.6  静态类 89
    3.7  Object类 89
    3.7.1  System.Object方法 89
    3.7.2  ToString()方法 90
    3.8  扩展方法 92
    3.9  小结 92
    第4章  继承 93
    4.1  继承的类型 93
    4.1.1  实现继承和接口继承 93
    4.1.2  多重继承 94
    4.1.3  结构和类 94
    4.2  实现继承 94
    4.2.1  虚方法 95
    4.2.2  隐藏方法 96
    4.2.3  调用函数的基类版本 97
    4.2.4  抽象类和抽象函数 98
    4.2.5  密封类和密封方法 98
    4.2.6  派生类的构造函数 99
    4.3  修饰符 103
    4.3.1  可见性修饰符 103
    4.3.2  其他修饰符 104
    4.4  接口 105
    4.4.1  定义和实现接口 106
    4.4.2  派生的接口 109
    4.5  小结 110
    第5章  数组 111
    5.1  简单数组 111
    5.1.1  数组的声明 111
    5.1.2  数组的初始化 111
    5.1.3  访问数组元素 112
    5.1.4  使用引用类型 113
    5.2  多维数组 114
    5.3  锯齿数组 115
    5.4  Array类 116
    5.4.1  属性 116
    5.4.2  创建数组 117
    5.4.3  复制数组 117
    5.4.4  排序 118
    5.5  数组和集合接口 121
    5.5.1  IEumerable接口 121
    5.5.2  ICollection接口 121
    5.5.3  IList接口 121
    5.6  枚举 122
    5.6.1  IEnumerator接口 123
    5.6.2  foreach语句 123
    5.6.3  yield语句 123
    5.7  小结 127
    第6章  运算符和类型强制转换 128
    6.1  运算符 128
    6.1.1  运算符的简化操作 129
    6.1.2  条件运算符 131
    6.1.3  checked和unchecked运算符 131
    6.1.4  is运算符 132
    6.1.5  as运算符 132
    6.1.6  sizeof运算符 132
    6.1.7  typeof运算符 133
    6.1.8  可空类型和运算符 133
    6.1.9  空接合运算符 133
    6.1.10  运算符的优先级 134
    6.2  类型的安全性 134
    6.2.1  类型转换 135
    6.2.2  装箱和拆箱 138
    6.3  对象的相等比较 139
    6.3.1  引用类型的相等比较 139
    6.3.2  值类型的相等比较 140
    6.4  运算符重载 141
    6.4.1  运算符的工作方式 142
    6.4.2  运算符重载的示例:
    Vector结构 142
    6.5  用户定义的数据类型转换 149
    6.5.1  执行用户定义的类型转换 150
    6.5.2  多重数据类型转换 156
    6.6  小结 159
    第7章  委托和事件 160
    7.1  委托 160
    7.1.1  在C#中声明委托 161
    7.1.2  在C#中使用委托 162
    7.1.3  简单的委托示例 165
    7.1.4  BubbleSorter示例 166
    7.1.5  多播委托 169
    7.1.6  匿名方法 172
    7.1.7   表达式 173
    7.1.8  协变和抗变 175
    7.2  事件 176
    7.2.1  从接收器的角度讨论事件 177
    7.2.2  生成事件 179
    7.3  小结 182
    第8章  字符串和正则表达式 184
    8.1  System.String类 184
    8.1.1  创建字符串 185
    8.1.2  StringBuilder成员 188
    8.1.3  格式化字符串 189
    8.2  正则表达式 194
    8.2.1  正则表达式概述 194
    8.2.2  RegularExpressionsPlayaround
    示例 195
    8.2.3  显示结果 198
    8.2.4  匹配、组合和捕获 199
    8.3  小结 201
    第9章  泛型 202
    9.1  概述 202
    9.1.1  性能 203
    9.1.2  类型安全 203
    9.1.3  二进制代码的重用 204
    9.1.4  代码的扩展 204
    9.1.5  命名约定 205
    9.2  创建泛型类 205
    9.3  泛型类的特性 209
    9.3.1  默认值 210
    9.3.2  约束 210
    9.3.3  继承 212
    9.3.4  静态成员 213
    9.4  泛型接口 213
    9.5  泛型方法 214
    9.6  泛型委托 216
    9.6.1  执行委托调用的方法 216
    9.6.2  对Array类使用泛型委托 218
    9.7  Framework的其他泛型类型 220
    9.7.1  结构Nullable<T> 220
    9.7.2  EventHandler<TEventArgs> 222
    9.7.3  ArraySegment<T> 222
    9.8  小结 223
    第10章  集合 224
    10.1  集合接口和类型 224
    10.2  列表 227
    10.2.1  创建列表 228
    10.2.2  只读集合 237
    10.3  队列 237
    10.4  栈 241
    10.5  链表 242
    10.6  有序表 248
    10.7  字典 250
    10.7.1  键的类型 251
    10.7.2  字典示例 252
    10.7.3  Lookup类 255
    10.7.4  其他字典类 256
    10.8  HashSet 257
    10.9  位数组 260
    10.9.1  BitArray 260
    10.9.2  BitVector32 262
    10.10  性能 264
    10.11  小结 266
    第11章  Language Integrated Query 267
    11.1  LINQ概述 267
    11.1.1  使用List<T>的查询 267
    11.1.2  扩展方法 273
    11.1.3  λ表达式 275
    11.1.4  LINQ查询 276
    11.1.5  推迟查询的执行 276
    11.2  标准的查询操作符 278
    11.2.1  过滤 280
    11.2.2  用索引来过滤 280
    11.2.3  类型过滤 281
    11.2.4  复合的from子句 281
    11.2.5  排序 282
    11.2.6  分组 283
    11.2.7  对嵌套的对象分组 284
    11.2.8  连接 285
    11.2.9  设置操作 287
    11.2.10  分区 288
    11.2.11  合计操作符 289
    11.2.12  转换 290
    11.2.13  生成操作符 291
    11.3  表达式树 292
    11.4  LINQ提供程序 295
    11.5  小结 296
    第12章  内存管理和指针 297
    12.1  后台内存管理 297
    12.1.1  值数据类型 297
    12.1.2  引用数据类型 299
    12.1.3  垃圾收集 300
    12.2  释放未托管的资源 301
    12.2.1  析构函数 301
    12.2.2  IDisposable接口 303
    12.2.3  实现IDisposable接口和
    析构函数 304
    12.3  不安全的代码 305
    12.3.1  用指针直接访问内存 306
    12.3.2  指针示例:PointerPlayaround 314
    12.3.3  使用指针优化性能 318
    12.4  小结 321
    第13章  反射 322
    13.1  定制特性 322
    13.1.1  编写定制特性 323
    13.1.2  定制特性示例:
    WhatsNewAttributes 326
    13.2  反射 329
    13.2.1  System.Type类 329
    13.2.2  TypeView示例 332
    13.2.3  Assembly类 334
    13.2.4  完成WhatsNewAttributes
    示例 335
    13.3  小结 339
    第14章  错误和异常 340
    14.1  异常类 340
    14.2  捕获异常 342
    14.2.1  执行多个catch块 344
    14.2.2  在其他代码中捕获异常 348
    14.2.3  System.Exception属性 348
    14.2.4  没有处理异常时所发生
    的情况 349
    14.2.5  嵌套的 try块 349
    14.3  用户定义的异常类 351
    14.3.1  捕获用户定义的异常 352
    14.3.2  抛出用户定义的异常 353
    14.3.3  定义异常类 356
    14.4  小结 358
    第Ⅱ部分  Visual Studio
    第15章  Visual Studio 2008
     360
    15.1  使用Visual Studio 2008 360
    15.1.1  创建项目 364
    15.1.2  解决方案和项目 370
    15.1.3  Windows应用程序代码 373
    15.1.4  读取Visual Studio 6项目 373
    15.1.5  项目的浏览和编码 374
    15.1.6  生成项目 382
    15.1.7  调试 386
    15.2  修订功能 389
    15.3  多目标 391
    15.4  WPF、WCF、WF等 393
    15.4.1  在Visual Studio中建立
    WPF应用程序 393
    15.4.2  在Visual Studio中建立
    WF应用程序 395
    15.5  小结 396
    第16章  部署 397
    16.1  部署的设计 397
    16.2  部署选项 397
    16.2.1  Xcopy实用工具 398
    16.2.2  Copy Web工具 398
    16.2.3  发布Web站点 398
    16.2.4  部署项目 398
    16.2.5  ClickOnce 398
    16.3  部署的要求 398
    16.4  部署.NET运行库 399
    16.5  简单的部署 400
    16.5.1  Xcopy部署 400
    16.5.2  Xcopy和Web应用程序 401
    16.5.3  Copy Web工具 401
    16.5.4  发布Web站点 401
    16.6  Installer项目 402
    16.6.1  Windows Installer 402
    16.6.2  创建安装程序 403
    16.7  ClickOnce 411
    16.7.1  ClickOnce操作 411
    16.7.2  发布应用程序 412
    16.7.3  ClickOnce设置 412
    16.7.4  应用程序缓存 412
    16.7.5  安全性 413
    16.7.6  高级选项 413
    16.8  小结 418
    第Ⅲ部分  基  类  库
    第17章  程序集
     420
    17.1  程序集的含义 420
    17.1.1  程序集的特性 421
    17.1.2  程序集的结构 421
    17.1.3  程序集的清单 422
    17.1.4  命名空间、程序集和组件 422
    17.1.5  私有程序集和共享程序集 423
    17.1.6  辅助程序集 423
    17.1.7  查看程序集 423
    17.2  构建程序集 424
    17.2.1  创建模块和程序集 424
    17.2.2  程序集的属性 426
    17.3  动态加载和创建程序集 428
    17.4  应用程序域 431
    17.5  共享程序集 435
    17.5.1  强名 435
    17.5.2  使用强名获得完整性 436
    17.5.3  全局程序集缓存 436
    17.5.4  创建共享程序集 438
    17.5.5  创建强名 439
    17.5.6  安装共享程序集 440
    17.5.7  使用共享程序集 440
    17.5.8  程序集的延迟签名 442
    17.5.9  引用 442
    17.5.10  本机图像生成器 443
    17.6  配置.NET应用程序 444
    17.6.1  配置类别 445
    17.6.2  为搜索程序集配置目录 446
    17.7  版本问题 448
    17.7.1  版本号 448
    17.7.2  编程获取版本 449
    17.7.3  应用程序配置文件 449
    17.7.4  发布方的策略文件 452
    17.7.5  运行库的版本 455
    17.8  小结 456
    第18章  跟踪和事件 457
    18.1  跟踪 457
    18.1.1  跟踪源 458
    18.1.2  跟踪开关 459
    18.1.3  跟踪监听器 460
    18.1.4  过滤器 462
    18.1.5  断言 463
    18.2  事件日志 464
    18.2.1  事件日志体系架构 465
    18.2.2  事件日志类 466
    18.2.3  创建事件源 467
    18.2.4  写入事件日志 468
    18.2.5  资源文件 468
    18.3  性能监控 473
    18.3.1  性能监控类 473
    18.3.2  性能计数器的构建 473
    18.3.3  添加PerformanceCounter
    组件 474
    18.3.4  perfmon.exe 476
    18.4  小结 477
    第19章  线程和同步 478
    19.1  概述 478
    19.2  异步委托 479
    19.2.1  投票 480
    19.2.2  等待句柄 481
    19.2.3  异步回调 481
    19.3  Thread类 483
    19.3.1  给线程传送数据 485
    19.3.2  后台线程 486
    19.3.3  线程的优先级 487
    19.3.4  控制线程 487
    19.4  线程池 488
    19.5  线程问题 489
    19.5.1  竞态条件 489
    19.5.2  死锁 492
    19.6  同步 493
    19.6.1  lock语句和线程安全 494
    19.6.2  Interlocked 499
    19.6.3  Monitor类 500
    19.6.4  等待句柄 501
    19.6.5  Mutex类 502
    19.6.6  Semaphore类 503
    19.6.7  Events类 505
    19.6.8  ReaderWriterLockSlim 507
    19.7  Timer类 510
    19.8  COM单元 511
    19.9  基于事件的异步模式 512
    19.9.1  BackgroundWorker类 513
    19.9.2  激活取消功能 516
    19.9.3  激活进度功能 517
    19.9.4  创建基于事件的异步组件 518
    19.10  小结 522
    第20章  安全性 523
    20.1  身份验证和授权 523
    20.1.1  标识和Principal 523
    20.1.2  角色 525
    20.1.3  声明基于角色的安全性 525
    20.1.4  客户应用程序服务 526
    20.2  加密 531
    20.2.1  签名 533
    20.2.2  密钥的互换和安全传送 534
    20.3  资源的访问控制 537
    20.4  代码访问的安全性 540
    20.4.1  权限 541
    20.4.2  代码组 550
    20.4.3  策略的级别:Machine、
    User和Enterprise 557
    20.5  安全策略的管理 558
    20.5.1  代码组和权限的管理 561
    20.5.2  安全性的启用和禁用 561
    20.5.3  代码组的创建 562
    20.5.4  代码组的删除 562
    20.5.5  代码组权限的更改 563
    20.5.6  权限集的创建和应用 564
    20.5.7  使用强名发布代码 565
    20.5.8  使用证书发布代码 567
    20.6  小结 572
    第21章  本地化 573
    21.1  System.Globalization
    命名空间 573
    21.1.1  Unicode问题 573
    21.1.2  文化和区域 574
    21.1.3  使用文化 578
    21.1.4  排序 582
    21.2  资源 584
    21.2.1  创建资源文件 584
    21.2.2  资源文件生成器 584
    21.2.3  ResourceWriter 585
    21.2.4  使用资源文件 585
    21.2.5  System.Resources命名空间 590
    21.3  使用Visual Studio的Windows
    Forms本地化示例 591
    21.3.1  编程修改文化 595
    21.3.2  使用定制资源文件 596
    21.3.3  资源的自动回退 597
    21.3.4  外包翻译 597
    21.4  用ASP.NET本地化 598
    21.5  用WPF本地化 600
    21.5.1  WPF应用程序 600
    21.5.2  .NET资源 601
    21.5.3  用XAML本地化 602
    21.6  定制的资源读取器 604

    21.6.1  创建DatabaseResourceReader
    类 605
    21.6.2  创建DatabaseResourceSet类 606
    21.6.3  创建DatabaseResource-
    Manager类 607
    21.6.4  DatabaseResourceReader的
    客户应用程序 608
    21.7  创建定制文化 608
    21.8  小结 609
    第22章  事务处理 610
    22.1  概述 610
    22.1.1  事务处理阶段 611
    22.1.2  ACID属性 611
    22.2  数据库和实体类 612
    22.3  传统的事务处理 614
    22.3.1  ADO.NET事务处理 614
    22.3.2   System.EnterpriseServices 615
    22.4  System.Transactions 616
    22.4.1  可提交的事务处理 618
    22.4.2  事务处理的升级 620
    22.4.3  依赖的事务处理 621
    22.4.4  环境事务处理 623
    22.5  隔离级别 630
    22.6  定制资源管理器 631
    22.7  Windows Vista和Windows
    Server 2008 的事务处理 637
    22.8  小结 641
    第23章  Windows服务 642
    23.1  Windows服务 642
    23.2  Windows服务的体系结构 643
    23.2.1  服务程序 643
    23.2.2  服务控制程序 645
    23.2.3  服务配置程序 645
    23.3  System.ServiceProcess
    命名空间 645
    23.4  创建Windows服务 646
    23.4.1  使用套接字的类库 646
    23.4.2  TcpClient示例 649
    23.4.3  Windows服务项目 652
    23.4.4  线程和服务 656
    23.4.5  服务的安装 656
    23.4.6  安装程序 657
    23.5  服务的监视和控制 661
    23.5.1  MMC计算机管理 661
    23.5.2  net.exe 662
    23.5.3  sc.exe 663
    23.5.4  Visual Studio Server Explorer 664
    23.5.5  ServiceController类 664
    23.6  故障排除 671
    23.6.1  交互式服务 671
    23.6.2  事件日志 672
    23.7  电源事件 673
    23.8  小结 673
    第24章  互操作性 674
    24.1  .NET和COM 674
    24.1.1  元数据 675
    24.1.2  释放内存 675
    24.1.3  接口 675
    24.1.4  方法绑定 677
    24.1.5  数据类型 677
    24.1.6  注册 678
    24.1.7  线程 678
    24.1.8  错误处理 679
    24.1.9  事件处理 680
    24.2  编组 680
    24.3  在.NET客户程序中使用
    COM组件 681
    24.3.1  创建COM组件 681
    24.3.2  创建Runtime Callable
    Wrapper 686
    24.3.3  使用RCW 687
    24.3.4  可交互操作的主程序集 689
    24.3.5  线程问题 689
    24.3.6  添加连接点 689
    24.3.7  在Windows窗体中使用
    ActiveX控件 692
    24.3.8  在ASP.NET中使用
    COM对象 694
    24.4  在COM客户程序中使用
    .NET组件 695
    24.4.1  COM Callable Wrapper 695
    24.4.2  创建.NET组件 695
    24.4.3  创建类型库 696
    24.4.4  COM互操作特性 698
    24.4.5  COM注册 701
    24.4.6  创建COM客户程序 701
    24.4.7  添加连接点 703
    24.4.8  用sink对象创建客户程序 704
    24.4.9  在Internet Explorer中运行
    Windows窗体控件 705
    24.5  平台调用 706
    24.6  小结 709
    第Ⅳ部分  数    据
    第25章  文件和注册表操作 712
    25.1  管理文件系统 712
    25.1.1  表示文件和文件夹的
    .NET类 713
    25.1.2  Path类 716
    25.1.3  示例:文件浏览器 716
    25.2  移动、复制和删除文件 721
    25.2.1  FilePropertiesAndMovement
    示例 721
    25.2.2  示例FilePropertiesAnd-
    Movement的代码 722
    25.3  读写文件 724
    25.3.1  读取文件 725
    25.3.2  写入文件 726
    25.3.3  流 727
    25.3.4  缓存的流 729
    25.3.5  使用FileStream类读写
    二进制文件 729
    25.3.6  读写文本文件 734
    25.4  读取驱动器信息 740
    25.5  文件的安全性 742
    25.5.1  从文件中读取ACL 743
    25.5.2  从目录中读取ACL 744
    25.5.3  添加和删除文件中的
    ACL项 745
    25.6  读写注册表 746
    25.6.1  注册表 747
    25.6.2  .NET注册表类 749
    25.6.3  SelfPlacingWindow示例 751
    25.7  读写独立存储器 756
    25.8  小结 760
    第26章  .NET数据访问 761
    26.1  ADO.NET概述 761
    26.1.1  命名空间 762
    26.1.2  共享类 762
    26.1.3  数据库特定的类 763
    26.2  使用数据库连接 764
    26.2.1  管理连接字符串 765
    26.2.2  高效地使用连接 767
    26.2.3  事务处理 769
    26.3  命令 770
    26.3.1  执行命令 771
    26.3.2  调用存储过程 775
    26.4  快速数据访问:数据读取器 777
    26.5  管理数据和关系:DataSet类 780
    26.5.1  数据表 780
    26.5.2  数据列 781
    26.5.3  数据关系 786
    26.5.4  数据约束 787
    26.6  XML模式:用XSD
    生成代码 790
    26.7  填充数据集 795
    26.7.1  用数据适配器来填充
    DataSet 796
    26.7.2  从XML中给数据集
    填充数据 797
    26.8  保存对数据集的修改 797
    26.8.1  通过数据适配器进行更新 797
    26.8.2  写入XML输出结果 800
    26.9  使用ADO.NET 801
    26.9.1  分层开发 801
    26.9.2  生成SQL Server的键 802
    26.9.3  命名约定 804
    26.10  小结 806
    第27章  LINQ to SQL 807
    27.1  LINQ to SQL和Visual
    Studio 2008 808
    27.1.1  使用LINQ to SQL调用
    Products表--创建控制台
    应用程序 809
    27.1.2  添加LINQ to SQL类 809
    27.1.3  O/R设计器概述 810
    27.1.4  创建Product对象 811
    27.2  对象映射到LINQ对象上 813
    27.2.1  DataContext对象 814
    27.2.2  Table<TEntity>对象 817
    27.3  不使用O/R设计器工作 818
    27.3.1  创建自己的定制对象 818
    27.3.2  用定制的对象和LINQ
    进行查询 819
    27.3.3  用查询限制所调用的列 820
    27.3.4  使用列名 821
    27.3.5  创建自己的DataContext
    对象 821
    27.4  定制对象和O/R设计器 822
    27.5  查询数据库 824
    27.5.1  使用查询表达式 824
    27.5.2  查询表达式 825
    27.5.3  使用表达式过滤 825
    27.5.4  连接 826
    27.5.5  组合数据项 827
    27.6  存储过程 828
    27.7  小结 829
    第28章  处理XML 830
    28.1  .NET支持的XML标准 830
    28.2  System.Xml命名空间 831
    28.3  使用System.Xml类 832
    28.4  读写流格式的XML 832
    28.4.1  使用 XmlReader类 833
    28.4.2  使用XmlReader类进行验证 836
    28.4.3  使用XmlWriter类 838
    28.5  在.NET中使用DOM 839
    28.6  使用XPathNavigator 844
    28.6.1  System.Xml.XPath命名空间 844
    28.6.2  System.Xml.Xsl命名空间 849
    28.6.3  调试XSLT 853
    28.7  XML和ADO.NET 854
    28.7.1  将ADO.NET数据转换为
    XML文档 854
    28.7.2  把XML文档转换为
    ADO.NET数据 860
    28.8  在XML中串行化对象 862
    28.9  小结 871
    第29章  LINQ to XML 872
    29.1  LINQ to XML和.NET 3.5 873
    29.1.1  创建XML文档的新对象 873
    29.1.2  Visual Basic 2008开辟了
    另一条道路 873
    29.1.3  命名空间和前缀 873
    29.2  .NET Framework 3.5中的新
    XML对象 874
    29.2.1  XDocument对象 874
    29.2.2  XElement对象 874
    29.2.3  XNamespace对象 875
    29.2.4  XComment对象 877
    29.2.5  XAttribute对象 878
    29.3  使用LINQ查询XML文档 879
    29.3.1  查询静态的XML文档 879
    29.3.2  查询动态的XML文档 880
    29.4  处理XML文档 882
    29.4.1  读取XML文档 882
    29.4.2  写入XML文档 883
    29.5  使用LINQ to SQL和LINQ
    to XML 884
    29.5.1  建立LINQ to SQL组件 885
    29.5.2  查询数据库,输出XML 885
    29.6  小结 887
    第30章  .NET编程和SQL Server 888
    30.1  .NET运行库的主机 888
    30.2  Microsoft.SqlServer.Server 890
    30.3  用户定义的类型 891
    30.3.1  创建UDT 891
    30.3.2  使用UDT 896
    30.3.3  在客户端代码中使用UDT 896
    30.4  用户定义的合计函数 897
    30.4.1  创建用户定义的合计函数 898
    30.4.2  使用用户定义的合计函数 899
    30.5  存储过程 900
    30.5.1  创建存储过程 900
    30.5.2  使用存储过程 901
    30.6  用户定义的函数 902
    30.6.1  创建用户定义的函数 902
    30.6.2  使用用户定义的函数 903
    30.7  触发器 903
    30.7.1  创建触发器 904
    30.7.2  使用触发器 905
    30.8  XML数据类型 905
    30.8.1  包含XML数据的表 905
    30.8.2  读取XML值 906
    30.8.3  数据的查询 909
    30.8.4  XML数据修改语言
    (XML DML) 911
    30.8.5  XML索引 912
    30.8.6  强类型化的XML 913
    30.9  小结 914
    第Ⅴ部分  显    示
    第31章  Windows窗体 916
    31.1  创建Windows窗体应用程序 916
    类层次结构 921
    31.2  Control类 922
    31.2.1  大小和位置 922
    31.2.2  外观 923
    31.2.3  用户交互操作 923
    31.2.4  Windows功能 924
    31.2.5  杂项功能 924
    31.3  标准控件和组件 925
    31.3.1  Button控件 925
    31.3.2  CheckBox控件 926
    31.3.3  RadioButton控件 927
    31.3.4  ComboBox控件、ListBox
    控件和CheckedListBox
    控件 927
    31.3.5  DateTimePicker控件 929
    31.3.6  ErrorProvider组件 930
    31.3.7  HelpProvider组件 931
    31.3.8  ImageList组件 931
    31.3.9  Label控件 931
    31.3.10  ListView控件 932
    31.3.11  PictureBox控件 933
    31.3.12  ProgressBar控件 934
    31.3.13  TextBox控件、RichTextBox
    控件与MaskedTextBox
    控件 934
    31.3.14  Panel控件 935
    31.3.15  FlowLayoutPanel和
    TableLayoutPanel控件 936
    31.3.16  SplitContainer控件 936
    31.3.17  TabControl控件和
    TabPages控件 937
    31.3.18  ToolStrip控件 937
    31.3.19  MenuStrip控件 940
    31.3.20  ContextMenuStrip控件 940
    31.3.21  ToolStripMenuItem控件 940
    31.3.22  ToolStripManager类 941
    31.3.23  ToolStripContainer控件 941
    31.4  窗体 941
    31.4.1  Form类 941
    31.4.2  多文档界面 946
    31.4.3  定制控件 947
    31.5  小结 957
    第32章  数据绑定 958
    32.1  DataGridView控件 958
    32.1.1  显示列表数据 958
    32.1.2  数据源 960
    32.2  DataGridView类的层次结构 968
    32.3  数据绑定 970
    32.3.1  简单的绑定 971
    32.3.2  数据绑定对象 971
    32.4  Visual Studio和数据访问 975
    32.4.1  创建一个连接 975
    32.4.2  选择数据 978
    32.4.3  更新数据源 978
    32.4.4  其他常见的要求 979
    32.5  小结 986
    第33章  使用GDI+绘图 987
    33.1  理解绘图规则 987
    33.1.1  GDI和GDI+ 987
    33.1.2  绘制图形 989
    33.1.3  使用OnPaint()绘制图形 992
    33.1.4  使用剪切区域 993
    33.2  测量坐标和区域 995
    33.2.1  Point和PointF结构 995
    33.2.2  Size和SizeF结构 996
    33.2.3  Rectangle和RectangleF结构 997
    33.2.4  Region 998
    33.3  调试须知 999
    33.4  绘制可滚动的窗口 1000
    33.5  世界、页面和设备坐标 1004
    33.6  颜色 1005
    33.6.1  红绿蓝(RGB)值 1005
    33.6.2  命名的颜色 1006
    33.6.3  图形显示模式和安全的
    调色板 1006
    33.6.4  安全调色板 1007
    33.7  画笔和钢笔 1007
    33.7.1  画笔 1008
    33.7.2  钢笔 1008
    33.8  绘制图形和线条 1009
    33.9  显示图像 1011
    33.10  处理图像时的问题 1013
    33.11  绘制文本 1014
    33.12  简单的文本示例 1014
    33.13  字体和字体系列 1015
    33.14  示例:枚举字体系列 1017
    33.15  编辑文本文档:
    CapsEditor示例 1019
    33.15.1  Invalidate()方法 1023
    33.15.2  计算项和文档的大小 1024
    33.15.3  OnPaint() 1025
    33.15.4  坐标转换 1026
    33.15.5  响应用户的输入 1028
    33.16  打印 1030
    33.17  小结 1035
    第34章  Windows Presentation Foundation 1036
    34.1  概述 1036
    34.1.1  XAML 1036
    34.1.2  设计人员和开发人员
    的合作 1041
    34.1.3  类层次结构 1042
    31.1.4  命名空间 1043
    34.2  形状 1044
    34.3  变换 1047
    34.4  笔刷 1047
    34.4.1  SolidColorBrush 1048
    34.4.2  LinearGradientBrush 1048
    34.4.3  RadialGradientBrush 1049
    34.4.4  DrawingBrush 1049
    34.4.5  ImageBrush 1050
    34.4.6  VisualBrush 1050
    34.5  控件 1052
    34.5.1  简单控件 1052
    34.5.2  内容控件 1052
    34.5.3  有标题的内容控件 1054
    34.5.4  项控件 1055
    34.5.5  带标题的项控件 1055
    34.6  布局 1056
    34.6.1  StackPanel 1056
    34.6.2  WrapPanel 1057
    34.6.3  Canvas 1057
    34.6.4  DockPanel 1058
    34.6.5  Grid 1059
    34.7  事件处理 1060
    34.8  样式、模板和资源 1061
    34.8.1  样式 1061
    34.8.2  资源 1062
    34.8.3  创建列表框的样式 1074
    34.9  小结 1079
    第35章  高级WPF 1080
    35.1  数据绑定 1080
    35.1.1  概述 1080
    35.1.2  用XAML绑定 1081
    35.1.3  简单对象的绑定 1083
    35.1.4  对象数据提供程序 1085
    35.1.5  列表绑定 1087
    35.1.6  绑定到XML上 1095
    35.1.7  绑定的验证 1097
    35.2  命令绑定 1101
    35.3  动画 1105
    35.3.1  时间线 1106
    35.3.2  触发器 1109
    35.3.3  故事板 1111
    35.4  在WPF中添加3D特性 1112
    35.5  Windows窗体集成 1119
    35.5.1  Windows窗体中的WPF
    控件 1119
    35.5.2  WPF应用程序中的
    Windows窗体控件 1121
    35.6  WPF浏览器应用程序 1122
    35.7  小结 1122
    第36章  插件 1124
    36.1  System.AddIn体系结构 1124
    36.1.1  插件的问题 1125
    36.1.2  管道体系结构 1125
    36.1.3  发现 1126
    36.1.4  激活和隔离 1127
    36.1.5  合同 1129
    36.1.6  生存期 1130
    36.1.7  版本问题 1131
    36.2  插件示例 1131
    36.2.1  计算器合同 1132
    36.2.2  计算器插件视图 1133
    36.2.3  计算器插件适配器 1133
    36.2.4  计算器插件 1135
    36.2.5  计算器主机视图 1136
    36.2.6  计算机主机适配器 1136
    36.2.7  计算器主机 1138
    36.2.8  其他插件 1141
    36.3  小结 1142
    第37章  ASP.NET页面 1143
    37.1  ASP.NET概述 1143
    37.2  ASP.NET Web窗体 1145
    37.2.1  ASP.NET代码模型 1148
    37.2.2  ASP.NET服务器控件 1149
    37.3  ADO.NET和数据绑定 1163
    37.3.1  更新会议登记应用程序 1163
    37.3.2  数据绑定的更多内容 1169
    37.4  应用程序配置 1175
    37.5  小结 1177
    第38章  ASP.NET开发 1178
    38.1  用户控件和定制控件 1179
    38.1.1  用户控件 1179
    38.1.2  PCSDemoSite中的
    用户控件 1185
    38.1.3  定制控件 1185
    38.2  Master页面 1189
    38.2.1  在Web页面中访问
    Master页面 1191
    38.2.2  嵌套的Master页面 1192
    38.2.3  PCSDemoSite中的
    Master页面 1192
    38.3  站点导航 1194
    38.4  安全性 1197
    38.4.1  使用安全向导添加Forms
    身份验证功能 1197
    38.4.2  实现登录系统 1200
    38.4.3  Web 登录服务器控件 1201
    38.4.4  保护目录 1202
    38.4.5  PCSDemoSite中的安全性 1202
    38.5  主题 1204
    38.5.1  把主题应用于页面 1204
    38.5.2  定义主题 1205
    38.5.3  PCSDemoSite中的主题 1206
    38.6  Web Parts 1209
    38.6.1  Web Parts应用程序组件 1209
    38.6.2  Web Parts示例 1211
    38.7  小结 1217
    第39章  ASP.NET AJAX 1218
    39.1  Ajax的概念 1218
    39.2  ASP.NET AJAX 1220
    39.2.1  核心功能 1221
    39.2.2  ASP.NET AJAX
    Control Toolkit 1223
    39.3  使用ASP.NET AJAX 1224
    39.3.1  ASP.NET AJAX网站示例 1224
    39.3.2  支持ASP.NET AJAX的
    网站配置 1227
    39.3.3  添加ASP.NET AJAX功能 1230
    39.3.4  使用AJAX库 1236
    39.4  小结 1244
    第40章  Visual Studio Tools for Office 1246
    40.1  VSTO概述 1246
    40.1.1  项目类型 1247
    40.1.2  项目特性 1249
    40.2  VSTO基础 1250
    40.2.1  Office对象模型 1250
    40.2.2  VSTO命名空间 1251
    40.2.3  主机项和主机控件 1251
    40.2.4  基本的VSTO项目结构 1253
    40.2.5  Globals类 1255
    40.2.6  事件处理 1256
    40.3  建立VSTO解决方案 1256
    40.3.1  管理应用程序级插件 1257
    40.3.2  与应用程序和文档
    交互操作 1258
    40.3.3  UI的定制 1259
    40.4  示例应用程序 1264
    40.5  VBA交互操作性 1273
    40.6  小结 1276
    第Ⅵ部分  通    信
    第41章  访问Internet 1278
    41.1  WebClient类 1279
    41.1.1  下载文件 1279
    41.1.2  基本的Web客户示例 1279
    41.1.3  上传文件 1280
    41.2  WebRequest类和
    WebResponse类 1281
    41.3  把输出结果显示为HTML
    页面 1284
    41.3.1  在应用程序中进行简单
    的Web浏览 1285
    41.3.2  启动Internet Explorer实例 1286
    41.3.3  给应用程序提供更多的
    IE类型特性 1287
    41.3.4  使用WebBrowser控件
    打印 1292
    41.3.5  显示请求页面的代码 1292
    41.3.6  WebRequest和WebResponse
    的层次结构 1293
    41.4  实用工具类 1294
    41.4.1  URI 1294
    41.4.2  IP地址和DNS名称 1295
    41.5  较低层的协议 1297
    41.6  小结 1307

    第42章  Windows Communication Foundation 1308
    42.1  WCF概述 1308
    42.1.1  SOAP 1309
    42.1.2  WSDL 1310
    42.1.3  JSON 1310
    42.2  简单的服务和客户 1311
    42.2.1  服务合同 1312
    42.2.2  服务的实现 1312
    42.2.3  WCF服务主机和WCF
    测试客户机 1313
    42.2.4  定制服务主机 1315
    42.2.5  WCF客户程序 1316
    42.2.6  诊断 1317
    42.3  合同 1319
    42.3.1  数据合同 1320
    42.3.2  版本问题 1320
    42.3.3  服务合同 1321
    42.3.4  消息合同 1322
    42.4  服务的实现 1322
    42.5 绑定 1328
    42.6  主机 1330
    42.6.1  定制主机 1330
    42.6.2  WAS主机 1331
    42.7  客户程序 1332
    42.8  双向通信 1333
    42.9  小结 1336
    第43章  Windows Workflow Foundation 1337
    43.1  Hello World示例 1337
    43.2  活动 1338
    43.2.1  IfElseActivity 1339
    43.2.2  ParallelActivity 1340
    43.2.3  CallExternalMethodActivity 1342
    43.2.4  DelayActivity 1342
    41.2.5  ListenActivity 1343
    43.2.6  活动的执行模型 1344
    43.3  定制的活动 1344
    43.3.1  活动的有效性验证 1346
    43.3.2  主题和设计器 1347
    43.3.3  ActivityToolboxItem
    和图标 1348
    43.3.4  定制的复合活动 1350
    43.4  工作流 1356
    43.4.1  系列工作流 1357
    43.4.2  状态机工作流 1357
    43.4.3  给工作流传送参数 1359
    43.4.4  从工作流中返回结果 1360
    43.4.5  将参数绑定到活动上 1361
    43.5  工作流运行库 1362
    43.6  工作流服务 1362
    43.6.1  持续服务 1364
    43.6.2  跟踪服务 1365
    43.6.3  定制服务 1367
    43.7  与WCF集成 1368
    43.8  保存工作流 1370
    43.9  工作流设计器 1372
    43.10  小结 1372
    第44章  Enterprise Services 1373
    44.1  概述 1373
    44.1.1  Enterprise Services简史 1374
    44.1.2  使用Enterprise Services
    的场合 1374
    44.1.3  环境 1375
    44.1.4  自动的事务处理 1375
    44.1.5  分布式事务处理 1375
    44.1.6  对象池 1376
    44.1.7  基于角色的安全性 1376
    44.1.8  排队的组件 1376
    44.1.9  松散藕合的事件 1376
    44.2  创建简单的COM+应用程序 1377
    44.2.1  类ServicedComponent 1377
    44.2.2  标记程序集 1377
    44.2.3  程序集的属性 1378
    44.2.4  创建组件 1378
    44.3  部署 1380
    44.3.1  自动部署 1380
    44.3.2  手工部署 1380
    44.3.3  创建安装软件包 1380
    44.4  Component Services浏览器 1381
    44.5  客户应用程序 1383
    44.6  事务处理 1384
    44.6.1  事务处理的属性 1384
    44.6.2  事务处理的结果 1385
    44.7  示例应用程序 1386
    44.7.1  实体类 1387
    44.7.2  OrderControl组件 1388
    44.7.3  OrderData组件 1389
    44.7.4  OrderLineData组件 1391
    44.7.5  客户应用程序 1392
    44.8  集成WCF和Enterprise
    Services 1394
    44.8.1  WCF服务Fa?ade 1394
    44.8.2  客户程序 1397
    44.9  小结 1398
    第45章  消息队列 1399
    45.1  概述 1399
    45.1.1  使用Message Queuing
    的场合 1400
    45.1.2  Message Queuing特性 1401
    45.2  Message Queuing产品 1401
    45.3  Message Queuing结构 1402
    45.3.1  消息 1402
    45.3.2  消息队列 1403
    45.4  Message Queuing管理工具 1404
    45.4.1  创建消息队列 1404
    45.4.2  消息队列属性 1404
    45.5  Message Queuing的
    编程实现 1405
    45.5.1  创建消息队列 1406
    45.5.2  查找队列 1406
    45.5.3  打开已知的队列 1407
    45.5.4  发送消息 1408
    45.5.5  接收消息 1410
    45.6  课程订单应用程序 1412
    45.6.1  课程订单类库 1413
    45.6.2  课程订单消息发送程序 1413
    45.6.3  发送优先级和可恢复
    的消息 1415
    45.6.4  课程订单消息接收程序 1416
    45.7  接收结果 1419
    45.7.1  确认队列 1419
    45.7.2  响应队列 1420
    45.8  事务队列 1420
    45.9  消息队列和WCF 1421
    45.9.1  带数据合同的实体类 1422
    45.9.2  WCF服务合同 1423
    45.9.3  WCF消息接收程序 1424
    45.9.4  WCF消息发送程序 1426
    45.10  消息队列的安装 1427
    45.11  小结 1428
    第46章  目录服务 1429
    46.1  Active Directory的体系结构 1430
    46.1.1  特性 1430
    46.1.2  Active Directory的概念 1430
    46.1.3  Active Directory数据的
    特性 1434
    46.1.4  模式 1434
    46.2  Active Directory的
    管理工具 1435
    46.2.1  Active Directory Users and
    Computers工具 1436
    46.2.2  ADSI Edit工具 1437
    46.3  Active Directory编程 1438
    46.3.1  System.DirectoryServices
    命名空间中的类 1439
    46.3.2  绑定 1439
    46.3.3  获取目录项 1443
    46.3.4  对象集合 1444
    46.3.5  缓存 1445
    46.3.6  创建新对象 1446
    46.3.7  更新目录项 1446
    46.3.8  访问内部的ADSI对象 1447
    46.3.9  在Active Directory中搜索 1448
    46.4  搜索用户对象 1452
    46.4.1  用户界面 1452
    46.4.2  获取模式命名环境 1453
    46.4.3  获取User类的属性名 1453
    46.4.4  搜索用户对象 1454
    46.5  账户管理 1456
    46.5.1  显示用户信息 1457
    46.5.2  创建用户 1457
    46.5.3  重置密码 1458
    46.5.4  创建组 1458
    46.5.5  在组中添加用户 1459
    46.5.6  查找用户 1459
    46.6  DSML 1460
    46.6.1  命名空间System.Directory-
    Services.Protocols中的类 1460
    46.6.2  用DSML搜索Active
    Directory对象 1461
    46.7  小结 1462
    第47章  对等网络 1463
    47.1  P2P概述 1463
    47.1.1  客户机-服务器体系结构 1463
    47.1.2  P2P体系结构 1464
    47.1.3  P2P体系结构的挑战 1465
    47.1.4  P2P术语 1466
    47.1.5  P2P解决方案 1466
    47.2  Microsoft Windows Peer-
    to-Peer Networking 1466
    47.2.1  Peer Name Resolution
    Protocol(PNRP) 1467
    47.2.2  People Near Me 1469
    47.3  建立P2P应用程序 1470
    47.3.1  System.Net.PeerToPeer 1470
    47.3.2  System.Net.PeerTo-
    Peer.Collaboration 1475
    47.4  小结 1478

    第48章  Syndication 1479
    48.1  System.ServiceModel.
    Syndication命名空间概述 1479
    48.2  Syndication阅读器 1480
    48.3  提供SyndicationFeed 1482
    48.4  小结 1487
    第Ⅶ部分  附    录
    附录A  ADO.NET Entity
    Framework 1490
    附录B  C#、Visual Basic和
    C++/CLI 1512
    附录C  Windows Vista和Windows
    Server 2008 1541

    申明

    非源创博文中的内容均收集自网上,若有侵权之处,请及时联络,我会在第一时间内删除.再次说声抱歉!!!

    博文欢迎转载,但请给出原文连接。

  • 相关阅读:
    矩阵快速幂 ——(递推表达式)
    简易五子棋 V1.1.0
    自己写的五子棋
    公共子序列
    阮一峰 KMP BM算法
    「SDOI2013」森林
    「SPOJ1487」Query on a tree III
    「luogu3810」陌上花开
    「CQOI2011」动态逆序对
    「APIO2012」派遣
  • 原文地址:https://www.cnblogs.com/Athrun/p/1527143.html
Copyright © 2020-2023  润新知