图书介绍
C#高级编程 第6版PDF|Epub|txt|kindle电子书版本网盘下载
![C#高级编程 第6版](https://www.shukui.net/cover/32/30162408.jpg)
- (美)内格尔(Nagel.C)等著;李铭翻译;黄静审校 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302184959
- 出版时间:2008
- 标注页数:1557页
- 文件大小:406MB
- 文件页数:1587页
- 主题词:C语言-程序设计
PDF下载
下载说明
C#高级编程 第6版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第Ⅰ部分 C#语言2
第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/O54
2.12使用注释56
2.12.1源文件中的内部注释56
2.12.2 XML文档说明56
2.13 C#预处理器指令58
2.13.1 #define和#undef59
2.13.2 #if,#elif,#else和#endif59
2.13.3 #warning和#error60
2.13.4 #region和#endregion60
2.13.5 #line61
2.13.6 #pragma61
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 HashSet257
10.9位数组260
10.9.1 BitArray260
10.9.2 BitVector32262
10.10性能264
10.11小结266
第11章 Language Integrated Query267
11.1 LINQ概述267
11.1.1使用List<r>的查询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指针示例:PointerPlayaround314
12.3.3使用指针优化性能318
12.4小结321
第13章 反射322
13.1定制特性322
13.1.1编写定制特性323
13.1.2定制特性示例:WhatsNewAttributes326
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 Studio360
第15章 Visual Studio 2008360
15.1使用Visual Studio 2008360
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 ClickOnce398
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 Installer402
16.6.2创建安装程序403
16.7 ClickOnce411
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
第Ⅲ部分 基类库420
第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.exe476
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 Interlocked499
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 ReaderWriterLockSlim507
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标识和Principal523
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和Enterprise557
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 ResourceWriter585
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.EnterpriseServices615
22.4 System.Transactions616
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和WindowsServer 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.exe662
23.5.3 sc.exe663
23.5.4 Visual Studio Server Explorer664
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和COM674
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 Wrapper686
24.3.3使用RCW687
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 Wrapper695
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
第Ⅳ部分 数据712
第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从文件中读取ACL743
25.5.2从目录中读取ACL744
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用数据适配器来填充DataSet796
26.7.2从XML中给数据集填充数据797
26.8保存对数据集的修改797
26.8.1通过数据适配器进行更新797
26.8.2写入XML输出结果800
26.9使用ADO.NET801
26.9.1分层开发801
26.9.2生成SQL Server的键802
26.9.3命名约定804
26.10小结806
第27章 LINQ to SQL807
27.1 LINQ to SQL和Visual Studio 2008808
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章 处理XML830
28.1 .NET支持的XML标准830
28.2 System.Xml命名空间831
28.3使用System.Xml类832
28.4读写流格式的XML832
28.4.1使用XmlReader类833
28.4.2使用XtnlReader类进行验证836
28.4.3使用XmlWriter类838
28.5在.NET中使用DOM839
28.6使用XPathNavigator844
28.6.1 System.Xml.XPath命名空间844
28.6.2 System.Xml.Xsl命名空间849
28.6.3调试XSLT853
28.7 XML和ADO.NET854
28.7.1将ADO.NET数据转换为XML文档854
28.7.2把XML文档转换为ADO.NET数据860
28.8在XML中串行化对象862
28.9小结871
第29章 LINQ to XML872
29.1 LINQ to XML和.NET 3.5873
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 XML884
29.5.1建立LINQ to SQL组件885
29.5.2查询数据库,输出XML885
29.6小结887
第30章 .NET编程和SQL Server888
30.1 .NET运行库的主机888
30.2 Microsoft.SqlServer.Server890
30.3用户定义的类型891
30.3.1创建UDT891
30.3.2使用UDT896
30.3.3在客户端代码中使用UDT896
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强类型化的XML913
30.9小结914
第Ⅴ部分 显示916
第31章 Windows窗体916
31.1创建Windows窗体应用程序916
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 Region998
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 Foundation1036
34.1概述1036
34.1.1 XAML1036
34.1.2设计人员和开发人员的合作1041
34.1.3类层次结构1042
31.1.4命名空间1043
34.2形状1044
34.3变换1047
34.4笔刷1047
34.4.1 SolidColorBrush1048
34.4.2 LinearGradientBrush1048
34.4.3 RadialGradientBrush1049
34.4.4 DrawingBrush1049
34.4.5 ImageBrush1050
34.4.6 VisualBrush1050
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 StackPanel1056
34.6.2 WrapPanel1057
34.6.3 Canvas1057
34.6.4 DockPanel1058
34.6.5 Grid1059
34.7事件处理1060
34.8样式、模板和资源1061
34.8.1样式1061
34.8.2资源1062
34.8.3创建列表框的样式1074
34.9小结1079
第35章 高级WPF1080
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 Parts1209
38.6.1 Web Parts应用程序组件1209
38.6.2 Web Parts示例1211
38.7小结1217
第39章 ASP.NET AJAX1218
39.1 Ajax的概念1218
39.2 ASP.NET AJAX1220
39.2.1核心功能1221
39.2.2 ASP.NET AJAX Control Toolkit1223
39.3使用ASP.NET AJAX1224
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 Office1246
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
第Ⅵ部分 通信1278
第41章 访问Internet1278
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 URI1294
41.4.2 IP地址和DNS名称1295
41.5较低层的协议1297
41.6小结1307
第42章 Windows Communication Foundation1308
42.1 WCF概述1308
42.1.1 SOAP1309
42.1.2 WSDL1310
42.1.3 JSON1310
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 Foundation1337
43.1 Hello World示例1337
43.2活动1338
43.2.1 IfElseActivity1339
43.2.2 ParallelActivity1340
43.2.3 CallExternalMethodActivity1342
43.2.4 DelayActivity1342
41.2.5 ListenActivity1343
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 Services1373
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类ServicedComponent1377
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 Services1394
44.8.1 WCF服务Facade1394
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消息队列和WCF1421
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 DSML1460
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 Networking1466
47.2.1 Peer Name Resolution Protocol(PNRP)1467
47.2.2 People Near Me1469
47.3建立P2P应用程序1470
47.3.1 System.Net.PeerToPeer1470
47.3.2 System.Net.PeerTo-Peer.Collaboration1475
47.4小结1478
第48章 Syndication1479
48.1 System.ServiceModel.Syndication命名空间概述1479
48.2 Syndication阅读器1480
48.3提供SyndicationFeed1482
48.4小结1487
第Ⅶ部分 附录1490
附录A ADO.NET Entiry Framework1490
附录B C#、Visual Basic和C++/CLI1512
附录C Windows Vista和Windows Server 20081541