前言 1
第1部分 C#语言 3
第1章:C#与.NET框架 3
C#语言的进化 3
C#语言 4
NET平台 6
第2章:出发:“Hello World” 7
类、对象与类型 7
开发“He1lo World” 14
使用Visual Studio 2008调试器 18
第3章:C#语言基础 21
类型 21
变量与常量 25
空白 33
语句 33
操作符 49
预处理指令 59
第4章:类与对象 61
定义类 62
创建对象 67
使用静态成员 75
销毁对象 79
传递参数 83
重载方法和构造方法 89
用属性封装数据 92
只读字段 96
第5章:继承与多态 98
具体化与一般化 98
继承 101
多态 102
抽象类 109
万类之根:Object 113
嵌套类 115
第6章:操作符重载 118
使用operator关键字 118
支持其他.NET语言 119
创建有用的操作符 120
逻辑操作符对 120
等于操作符 120
转换操作符 121
让操作符工作 121
第7章:结构体 127
定义结构体 128
创建结构体 129
第8章:接口 132
实现接口 132
重定义接口的实现 147
显式接口实现 151
第9章:数组、索引器与集合 156
数组 156
foreach语句 162
索引器 177
集合接口 186
约束 190
List<T> 195
队列 206
栈 208
字典 211
第10章:字符串与正则表达式 214
字符串 215
正则表达式 229
第11章:异常处理 241
抛出和捕获异常 242
Exception对象 252
第12章:委托与事件 256
事件 256
事件和委托 257
匿名方法 271
第2部分 C#与数据 279
第13章:介绍语言集成查询 279
定义并执行查询 280
LINQ和C 285
匿名类型 291
隐式类型的本地变量 291
扩展方法 292
LINQ中的Lambda表达式 297
第14章:使用XML 302
XML基础(快速的回顾) 302
X代表的是可扩展性 304
创建XML文档 304
使用XPath在XML中查找 311
使用XPathNavigator查找 322
XML序列化 329
第15章:使用LINQ工作 337
开始安装 338
LINQ To SQL的基础 339
Visual Studio的LINQ To SQL设计器的使用 344
提取数据 349
使用面向SQL的LINQ更新数据 353
删除关系数据 358
面向XML的LINQ 363
第16章:ADO.NET和关系数据库 368
关系数据库和SQL 368
ADO.NET对象模型 372
开始ADO.NET编程 374
第3部分 C#编程 381
第17章:编写ASP.NET应用程序 381
Web窗体基础 381
创建一个Web窗体 385
数据绑定 391
第18章:编写WPF应用程序 404
WPF简介 404
创建应用程序 406
Dorothy,你学到了什么 419
第19章:编写Windows Forms应用程序 420
创建应用程序 420
第4部分 C#与.NET CLR 449
第20章:特性和反射 449
特性 449
反射 456
第21章:线程和同步 465
线程 466
同步 474
竞争条件和死锁 485
第22章:数据流 487
文件和目录 488
读取和写入数据 499
异步I/O 506
网络I/O 511
Web数据流 527
序列化 529
隔离存储 538
第23章:.NET和COM编程 542
导入ActiveX控件 542
P/Invoke 551
指针 554
C#关键字 561
索引 569