目 录
第1章 .NET 4.0框架和Visual Studio
2010开发工具 1
1.1 Visual Studio 2010开发平台 1
1.1.1 Visual Studio 2010的安装流程 2
1.1.2 Visual Studio 2010开发概览 5
1.1.3 Visual Studio 2010与以往版本
的比较 6
1.1.4 Visual Studio 2010的11大新
功能 9
1.1.5 把项目迁移到Visual Studio
2010 14
1.1.6 Visual Studio 2010的集成开发
环境 14
1.1.7 Visual Studio 2010的类层次
结构 14
1.1.8 Visual Studio 2010代码编辑器 16
1.1.9 Visual Studio 2010代码段 17
1.1.10 Visual Studio 2010调试 20
1.1.11 Visual Studio 2010重构 21
1.1.12 Visual Studio 2010的生成
和部署 23
1.1.13 Visual Studio 2010 MSBuild 26
1.1.14 Visual Studio 2010 ClickOnce
部署 27
1.2 .NET 4.0框架概览和新特性 34
1.2.1 .NET发展历程 35
1.2.2 .NET 4.0新特性与先前版本的
比较 35
1.2.3 .NET 4.0框架概述与分析 37
1.2.4 .NET 4.0中的新特性 - 等价
类型(Type Equivalency) 40
1.2.5 .NET 4.0中的新特性 - 契约式
设计 43
1.2.6 .NET 4.0中的新特性 - 交互
新特性 48
1.2.7 .NET 4.0中的新特性 - .NET 4.0
安全模型 50
1.2.8 .NET 4.0中的新特性 - Stub方法
重定向 53
1.2.9 .NET 4.0中的新特性 - InProc
SxS 61
1.2.10 .NET 4.0中的新特性 - 垃圾
回收机制 64
1.2.11 .NET 4.0中的新特性 - 并行
计算 66
1.2.12 .NET 4.0中的新特性 - 动态
语言C#与VB混合编程 69
1.2.13 .NET 4.0中的新特性 - 性能
及诊断 71
1.2.14 .NET 4.0中的升级
与增强 - 数据 72
1.2.15 .NET 4.0中的升级
与增强 - 并行编程 73
1.2.16 .NET 4.0中的升级
与增强 - WPF 73
1.2.17 .NET 4.0中的升级
与增强 - WF 74
1.2.18 .NET 4.0中的升级
与增强 - Office 2010 74
1.2.19 .NET 4.0中的升级
与增强 - Windows Azure 75
1.2.20 .NET 4.0中的升级
与增强 - Silverlight 78
1.2.21 .NET 4.0中的升级
与增强 - SharePoint 80
1.2.22 .NET 4.0中的升级
与增强 - WCF 82
1.2.23 .NET 4.0中的升级
与增强 - ASP.NET 82
1.2.24 .NET 4.0中的升级
与增强 - Reports 83
本章小结 86
第2章 C# 4.0新特性概览和Visual C#
2010新体验 87
2.1 C# 4.0新特性概览 87
2.1.1 C# 4.0新特性 - 动态查找 88
2.1.2 C# 4.0新特性 - dynamic类型 91
2.1.3 C# 4.0新特性 - 动态操作 91
2.1.4 C# 4.0新特性 - 运行时查找 91
2.1.5 C# 4.0新特性 - 带有动态
参数的重载解析 91
2.1.6 C# 4.0新特性 - 动态语言
运行时 92
2.1.7 C# 4.0新特性 - 已知问题 92
2.1.8 C# 4.0新特性 - 命名参数
和可选参数 92
2.1.9 C# 4.0新特性 - 可选参数 93
2.1.10 C# 4.0新特性 - 命名参数
和可选参数 93
2.1.11 C# 4.0新特性 - 重载解析 93
2.1.12 C# 4.0新特性 - COM交互
特性 94
2.1.13 C# 4.0新特性 - 动态引入 94
2.1.14 C# 4.0新特性 - 无PIA的
编译 94
2.1.15 C# 4.0新特性 - 省略ref 95
2.1.16 C# 4.0新特性 - Variance
变性 95
2.1.17 C# 4.0新特性 - Covariance
协变性 95
2.1.18 C# 4.0新特性 - Contravariance
逆变性 96
2.1.19 C# 4.0新特性 - 限制 96
2.1.20 C# 4.0新特性 - COM示例 97
2.2 创建Visual C# 2010应用程序 98
2.2.1 基于Visual C# 2010创建Windows
Form第一个应用 98
2.2.2 基于Visual C# 2010创建WPF
第一个应用 100
2.2.3 基于Visual C# 2010创建ASP.NET
第一个应用 102
2.2.4 基于Visual C# 2010创建Reports
第一个应用 105
2.2.5 基于Visual C# 2010创建WCF
第一个应用 111
2.2.6 基于Visual C# 2010创建Windows
Azure第一个应用 113
2.2.7 基于Visual C# 2010创建Office
2010的第一个应用 119
2.2.8 基于Visual C# 2010创建
SharePoint第一个应用 124
2.2.9 基于Visual C# 2010创建Windows
Sevice第一个应用 128
2.2.10 基于Visual C# 2010创建WF第一
个应用 133
2.2.11 基于Visual C# 2010创建
Silverlight第一个应用 137
2.2.12 基于Visual C# 2010创建XNA
Games第一个应用 139
2.2.13 基于Visual C# 2010创建Windows
Phone 7第一个应用 142
本章小结 146
第3章 C#面向对象编程和语法分析 147
3.1 变量、作用域、运算符和表达式 147
3.1.1 变量 147
3.1.2 作用域 148
3.1.3 运算符 149
3.1.4 表达式 153
3.2 方法和操作符重载 153
3.2.1 方法 153
3.2.2 运算符重载 156
3.3 使用流程控制语句 159
3.3.1 条件语句 159
3.3.2 循环 161
3.3.3 跳转语句 163
3.4 管理错误和异常 164
3.4.1 C#中的异常 165
3.4.2 处理异常 166
3.4.3 自定义异常 167
3.5 创建并管理类和对象 168
3.5.1 数据成员 169
3.5.2 函数成员 169
3.6 理解值和引用 172
3.6.1 值类型(Value Types) 173
3.6.2 引用类型(Reference Types) 174
3.7 使用枚举和结构来创建值类型 176
3.7.1 枚举(Enums) 176
3.7.2 结构(Structs) 177
3.8 使用数组和集合 179
3.8.1 数组(Arrays) 179
3.8.2 数组和集合接口 180
3.8.3 集合(Collections) 182
3.9 继承 187
3.9.1 继承的分类 187
3.9.2 实现继承 187
3.9.3 接口 192
3.10 使用垃圾回收和资源管理 194
3.10.1 自动内存管理 194
3.10.2 清理非托管资源 195
3.11 实现属性以访问字段 197
3.11.1 属性的定义 197
3.11.2 get与set属性访问器 199
3.11.3 自动实现的属性 200
3.12 泛型概述 200
3.12.1 泛型类 202
3.12.2 泛型方法 203
3.12.3 泛型约束 204
3.13 枚举集合 206
3.13.1 IEnumerator接口 206
3.13.2 foreach语句 207
3.13.3 yield语句 207
3.14 委托、事件和Lambda 209
3.14.1 委托 209
3.14.2 事件 218
3.14.3 Lambda表达式 221
3.15 索引器和指针 224
3.15.1 索引器 224
3.15.2 指针 225
3.16 LINQ编程 228
3.16.1 LINQ查询介绍 229
3.16.2 使用?表达式 231
3.16.3 查询结果排序 231
3.16.4 join子句 232
3.17 字符串和正则表达式 236
3.17.1 字符串 236
3.17.2 正则表达式 240
本章小结 244
第4章 .NET框架知识讲解 245
4.1 基于.NET框架知识讲解 245
4.2 公共语言运行库 246
4.2.1 托管代码 248
4.2.2 代码验证 248
4.2.3 代码访问验证 248
4.2.4 实时编译(JIT) 248
4.2.5 垃圾回收 249
4.3 .NET平台构造块(CTS和CLS) 249
4.4 程序集 253
4.4.1 元数据 254
4.4.2 程序集版本管理 255
4.4.3 微软中间语言(MSIL) 255
4.4.4 资源 256
4.5 .NET开发应用程序的范畴 256
4.6 .NET框架类库 257
4.7 使用C#开发第一个程序 259
本章小结 262
第5章 Visual C# 2010开发及Windows
Form应用 263
5.1 基于Visual C# 2010开发Windows
Form应用 263
5.1.1 创建Windows窗体应用
程序类层次结构 271
5.1.2 Control类 272
5.1.3 标准控件和组件 276
5.2 基于Visual C# 2010开发GDI+绘图 293
5.2.1 理解绘图规则 294
5.2.2 测量坐标和区域 296
5.2.3 调试须知 300
5.2.4 世界、页面和设备坐标 300
5.2.5 颜色 300
5.2.6 画笔和钢笔 301
5.2.7 绘制图形和线条 302
5.2.8 绘制可滚动的窗口 304
5.2.9 显示图像 305
5.2.10 使用双缓冲技术 307
5.2.11 绘制文本 312
5.2.12 字体和字体系列 313
5.2.13 打印 318
本章小结 318
第6章 Visual C# 2010开发Windows
Azure云计算应用 319
6.1 深入解析Windows Azure云计算
平台 319
6.2 基于Visual C# 2010创建并部署
一个WebRole云计算程序 324
6.3 基于Visual C# 2010创建并部署Worker
Role云计算程序 333
6.4 基于Visual C# 2010开发Table Storage
云计算程序 337
6.5 基于Visual C# 2010开发Queue Storage
云计算程序 340
6.6 基于Visual C# 2010开发Blob Storage
云计算程序 343
6.7 基于Visual C# 2010开发REST API
来直接访问Storage Service的云计算
程序 347
6.8 基于Visual C# 2010开发AppFabric
云计算程序 351
6.9 基于Visual C# 2010开发SQL Azure
云计算程序 362
本章小结 370
第7章 以C#开发Office 2010应用 371
7.1 基于Visual C# 2010开发Excel 2010
AddIn 371
7.2 基于Visual C# 2010开发Excel 2010
Template 374
7.3 基于Visual C# 2010开发Excel 2010
Workbook 378
7.4 基于Visual C# 2010开发InfoPath 2010
AddIn 382
7.5 基于Visual C# 2010开发Outlook 2010
AddIn 386
7.6 基于Visual C# 2010开发PowerPoint 2010
AddIn 391
7.7 基于Visual C# 2010开发Project 2010
AddIn 413
7.8 基于Visual C# 2010开发Visio 2010
AddIn 417
7.9 基于Visual C# 2010开发Word 2010
AddIn 423
7.10 基于Visual C# 2010开发Word 2010
Document 427
7.11 基于Visual C# 2010开发Word 2010
Template 431
本章小结 434
第8章 Visual C# 2010开发SharePoint
应用 435
8.1 基于Visual C# 2010开发SharePoint
应用 435
8.2 Windows SharePoint Service开发
基础 436
8.2.1 所需的开发技能 436
8.2.2 ASP.NET应用程序与SharePoint
网站 437
8.2.3 为Windows SharePoint Services
开发的内容 438
8.2.4 基于程序集的解决方案 439
8.2.5 ASP.NET资源 439
8.2.6 数据操作 440
8.2.7 开发环境 441
8.3 快速实现Web部件开发 445
8.4 UI定制与开发 447
8.5 定义字段类型开发 455
8.6 事件处理器开发 457
8.7 Web内容管理的定制和开发 462
8.7.1 页面输出的步骤 463
8.7.2 Web内容管理优势 463
8.8 高效率工作流开发 466
8.9 Excel Services开发 472
8.10 基于Visual C++ 2010开发WF
持久化服务 480
8.11 基于Visual C# 2010开发WF跟踪
服务 483
本章小结 484
第9章 Visual C# 2010开发ASP.NET
应用 485
9.1 基于Visual C# 2010开发ASP.NET
应用 485
9.2 基于Visual C# 2010开发ASP.NET
Web窗体 491
9.3 处理Page事件 505
本章小结 506
第10章 Visual C# 2010开发Siverlight
4.0应用 507
10.1 基于Visual C# 2010开发Siverlight 4.0
应用 507
10.1.1 Siverlight 4.0增强企业级
应用开发功能 507
10.1.2 Siverlight 4.0增强多媒体
影像功能 507
10.1.3 Siverlight 4.0强化客户端
功能 508
10.2 Silverlight图形对象的绘制 508
10.2.1 Line 508
10.2.2 Ellipse 509
10.2.3 Rectangle 510
10.2.4 Path 511
10.2.5 Polygon 512
10.2.6 Polyline 512
10.3 Silverlight 4的新控件 513
10.4 Silverlight的实践处理模型 514
10.4.1 文档对象模型 514
10.4.2 Silverlight编程模型 515
10.5 Silverlight 4中的动画 516
10.6 Siverlight应用多媒体 518
10.6.1 MediaElement对象 518
10.6.2 MediaElement属性 518
10.7 Silverlight应用实例 522
本章小结 528
第11章 Visual C# 2010开发WPF
应用 529
11.1 概述:基于Visual C# 2010开发
WPF 529
11.1.1 命名空间 529
11.1.2 类的层次 531
11.1.3 图形 531
11.2 Geometry类 532
11.2.1 变形(Transformation) 532
11.2.2 粉刷笔(Brushes) 533
11.3 WPF应用布局 534
11.3.1 StackPanel 534
11.3.2 WrapPanel 535
11.3.3 Canvas 535
11.3.4 DockPanel 536
11.3.5 Grid 536
11.4 WPF应用依赖项属性和路由事件 538
11.4.1 依赖属性与CLR包装属性 538
11.4.2 路由事件(RoutedEvent) 539
11.5 WPF应用经典控件 541
11.5.1 Simple控件 541
11.5.2 Content控件 542
11.5.3 Headered Content控件 543
11.5.4 Items控件 544
11.5.5 Headered Items控件 545
11.5.6 修饰 545
11.6 WPF应用窗口 546
11.6.1 窗口构成 546
11.6.2 窗口的生命周期 548
11.6.3 窗口的起始位置 549
11.6.4 窗口的大小 549
11.6.5 窗口的状态 549
11.6.6 窗口外观 550
11.7 WPF应用命令 550
11.7.1 定义命令 550
11.7.2 定义命令资源 551
11.7.3 命令绑定 552
11.8 WPF应用控件模板 552
11.9 WPF应用数据模板 555
11.10 WPF应用列表、树、工具条
和菜单 557
11.11 WPF应用数据绑定 561
11.11.1 BooksDemo 562
11.11.2 绑定XAML 564
11.11.3 简单类绑定 565
11.11.4 变更通知 567
11.11.5 列表绑定 569
11.11.6 多元绑定 572
11.11.7 优先级绑定 573
11.12 WPF应用文档 575
11.12.1 文本元素 575
11.12.2 文本效果 576
11.12.3 行列化 578
11.12.4 流文档 583
11.12.5 固定文档 584
11.13 WPF应用打印 584
11.13.1 使用PrintDialog进行打印 585
11.13.2 可视化打印效果 585
11.14 WPF应用动画 586
11.15 WPF应用3D绘图 587
11.15.1 3D图形基础 587
11.15.2 右手坐标系系统 588
11.15.3 3D场景中的元素 588
11.16 WPF应用多线程 590
本章小结 592
第12章 Visual C# 2010开发WCF
应用 593
12.1 第一个WCF程序 593
12.2 WCF通道模型 597
12.2.1 通道堆栈 597
12.2.2 通道形状 597
12.2.3 通道堆栈的编程 598
12.2.4 通道对象模型 598
12.3 标准绑定介绍 598
12.4 本机WCF-WCF交互的绑定
和地址 599
12.4.1 场景概述 599
12.4.2 进程间通信(IPC) 600
12.4.3 使用NetNamedPipeBinding 600
12.5 跨主机WCF-WCF交互的绑定
和地址 602
12.5.1 Net.Tcp端口共享 603
12.5.2 使用NetTcpBinding 603
12.6 与WS-I Basic Web服务进行交互的
绑定和地址 606
12.6.1 简单对象访问协议 606
12.6.2 使用basicHttpBinding 607
12.7 与改进Web服务进行交互的绑定
和地址 609
12.7.1 改进Web服务协议概述 609
12.7.2 使用wsHttpBinding 609
12.8 使用脱机模式进行消息交互的绑定
和地址 612
12.8.1 微软消息队列协议 612
12.8.2 使用NetMsmqBinding 613
12.9 契约定义和分类 616
12.10 服务契约 616
12.11 数据契约 617
12.12 消息契约 618
12.13 错误处理和错误契约 618
12.14 实例管理 620
12.14.1 单调服务 620
12.14.2 会话服务 620
12.14.3 单例服务 620
12.15 并发管理 621
12.16 元数据的发布 621
12.17 事务管理 623
12.17.1 事务传播 623
12.17.2 事务协议 623
12.17.3 事务管理器 623
12.17.4 声明事务 624
12.17.5 事务的传播模式 624
本章小结 624
第13章 基于Visual C++ 2010开发
Windows Phone 7应用 625
13.1 配置Windows Phone 7的开发调试
平台 625
13.1.1 搭建Windows Phone 7的
开发平台 625
13.1.2 编写第一个Windows Phone 7
程序 627
13.1.3 Silverlight for Windows
Phone 629
13.1.4 XNA 4.0 630
13.1.5 调试技巧 633
13.2 基于Visual C++ 2010开发Windows
Phone 7计算器 634
13.3 基于Visual C++ 2010开发Windows
Phone 7小游戏 636
13.3.1 XNA Game Studio游戏基础 637
13.3.2 XNA Framework游戏资源 642
13.3.3 XNA Game Studio游戏循环 648
13.3.4 XNA Game Studio游戏输入 653
13.3.5 AlienGame逻辑 656
本章小结 674
第14章 基于Visual C# 2010开发
Windows 7应用 675
14.1 基于Visual C# 2010实现超级
任务栏 675
14.1.1 使用任务覆盖图标(Overlay
Icon) 679
14.1.2 使用任务栏进度条 680
14.1.3 使用缩略图工具栏 682
14.1.4 使用即时缩略图预览 684
14.1.5 使用缩略图截图(Clips) 688
14.1.6 使用任务栏弹出列表 689
14.2 基于Visual C# 2010实现Shell库 694
14.2.1 创建SLUtil项目 696
14.2.2 添加Create命令 697
14.2.3 添加AddFolder
和RemoveFolder命令 700
14.2.4 添加Delete和Rename命令 703
14.2.5 添加SaveFolder、
NavPanePinnedState、
Icon和FolderType命令 704
14.2.6 添加ShowInfo命令 709
14.2.7 添加ManageUI命令 712
14.3 基于Visual C# 2010实现创建后台
服务 716
14.3.1 实现服务配置更改 718
14.3.2 添加代码将服务注册
为触发器-启动服务 720
14.3.3 为触发器-启动服务启用
UsbCopyService 721
14.4 基于Visual C# 2010开发基于
Windows 7的设备与性能应用 725
14.4.1 添加一个类来公开性能
计数器 726
14.4.2 公开诊断信息 731
14.4.3 检测应用程序 735
14.5 基于Visual C# 2010实现多点触摸 737
14.5.1 了解多点触控支持 737
14.5.2 多点触控示例 738
14.5.3 操作基础知识 740
14.5.4 ManipulationDelta和
DeltaManipulation 741
14.6 基于Visual C# 2010实现传感器
编程 744
14.6.1 Windows 7传感器和定位
平台 744
14.6.2 向WPF应用程序中添加
排版 746
14.6.3 添加图片指定逻辑 749
14.6.4 建立传感器助手 751
14.6.5 将ViewModel和传感器助手
进行整合 755
14.6.6 在UI用户界面添加光纤
传感器的交互 756
14.6.7 将加速传感器与UI用户界面
进行整合(可选) 760
14.6.8 摘要 764
14.7 基于Visual C# 2010实现Windows 7
Ribbon界面开发 764
14.8 基于Visual C# 2010开发Windows 7
的语音合成 768
14.9 基于Visual C# 2010开发Windows 7
的语音识别输入 771
14.10 基于Visual C# 2010开发Windows 7
的语音识别控制 778
14.11 基于Visual C# 2010开发Windows 7
的Tablet PC笔迹记事本 785
14.12 基于Visual C# 2010开发Windows 7
的Tablet PC汉字输入程序 795
本章小结 803