第1部分 C#基础 3
第1章 .NET Framework和C#语言 3
1.1 .NET Framework 3
1.1.1 公共语言运行时 5
1.1.2 Framework类库 6
1.1.3 并行计算平台 7
1.1.4 动态语言运行时 7
1.2 Visual Studio开发环境 7
1.3 编写第一个程序 8
1.4 C#程序的组成结构和类结构 11
小结 13
作业题 13
上机练习 13
第2章 理解C#类型 14
2.1 C#类型 14
2.2 预定义类型 15
2.2.1 常用的值类型 16
2.2.2 字符串类型 19
2.2.3 空字符串 21
2.2.4 字符串操作 22
2.2.5 使用StringBuilder创建可变的字符串 26
2.3 类型格式化 26
2.3.1 标准格式字符串 27
2.3.2 自定义格式字符串 28
2.3.3 复合格式化 28
2.4 C#语言中的数据 29
2.5 默认值 31
2.6 null和可以为null的类型 31
2.7 类型强制转换 32
2.8 运算符 33
2.8.1 算术运算符和赋值运算符 34
2.8.2 关系运算符 35
2.8.3 逻辑运算符 35
2.8.4 条件运算符 35
小结 36
作业 36
上机练习 37
第3章 C#类和对象 38
3.1 面向对象编程 38
3.2 面向组件编程 39
3.3 C#类 39
3.4 作用域和声明空间 39
3.4.1 访问性 40
3.4.2 字段和常量 41
3.4.3 属性 42
3.4.4 方法 43
3.4.5 实例化类 45
3.5 嵌套类 47
3.6 分部类 48
3.7 静态类 49
3.8 对象初始值设定项 50
小结 51
作业 51
上机练习 52
第4章 继承、多态、接口和抽象类 53
4.1 继承和多态 53
4.1.1 类的多态性 57
4.1.2 处理继承而来的成员 58
4.2 抽象类和抽象成员 60
4.3 接口 61
小结 64
作业 64
上机练习 65
第5章 枚举类型和结构 67
5.1 枚举类型 67
5.1.1 普通枚举 67
5.1.2 位标志枚举 69
5.2 结构 70
5.2.1 方法 72
5.2.2 构造和初始化 74
小结 74
作业 74
上机练习 76
第6章 事件及其处理 77
6.1 理解事件 77
6.2 订阅和取消订阅 79
6.3 匿名方法的展开讨论 81
6.4 引发事件 83
小结 84
作业 85
上机练习 85
第2部分 C#编程 89
第7章 程序控制流程 89
7.1 选择语句 89
7.1.1 if语句 89
7.1.2 switch语句 91
7.2 迭代语句 92
7.2.1 while语句 92
7.2.2 do…while语句 93
7.2.3 for语句 93
7.2.4 foreach语句 94
7.3 跳转语句 95
7.3.1 break语句 95
7.3.2 continue语句 96
7.3.3 return语句 96
小结 97
作业 97
上机练习 99
第8章 正则表达式 100
8.1 正则表达式概述 100
8.2 C#中的正则表达式 101
8.2.1 使用正则表达式验证字符串 101
8.2.2 使用正则表达式搜索字符串 102
小结 103
作业 103
上机练习 103
第9章 数组和集合 104
9.1 数组 105
9.1.1 数组索引 105
9.1.2 数组初始化 106
9.1.3 System.Array类 107
9.2 索引器 107
9.3 泛型集合 108
9.3.1 列表 109
9.3.2 Collection <T> 110
9.3.3 字典 112
9.3.4 集 114
9.3.5 堆栈和队列 115
9.4 集合初始值设定项 117
小结 118
作业 118
上机练习 119
第10章 异常处理错误 121
10.1 理解异常 121
10.2 引发异常 122
10.3 处理异常 123
10.4 重新引发捕获的异常 127
10.5 溢出和整型算术运算 128
小结 129
作业 129
上机练习 130
第11章 泛型的使用 131
11.1 为何使用泛型 131
11.1.1 理解泛型类型参数 133
11.1.2 泛型类型的默认值 134
11.2 使用泛型方法 135
11.3 创建泛型类 136
11.4 结合使用泛型和数组 137
11.5 得到泛型类型的类型 139
小结 140
作业 140
上机练习 140
第12章 LINQ查询表达式 141
12.1 LINQ简介 141
12.1.1 选择数据 143
12.1.2 对数据进行分组和排序 144
12.1.3 连接数据 146
12.2 标准查询运算方法 148
12.3 Lambda 149
12.4 延迟执行 150
小结 150
作业 151
上机练习 152
第13章 程序诊断处理 153
13.1 有条件地编译代码块 153
13.2 确定一个进程是否停止响应 154
13.3 捕获进程的标准输出 155
13.4 查看运行环境 156
小结 157
作业 157
上机练习 157
第14章 在Visual Studio环境中调试程序 158
14.1 注释代码 158
14.2 编译错误和运行错误 159
14.3 在Visual Studio中调试程序 160
14.3.1 变量窗口 161
14.3.2 使用数据提示 162
14.3.3 使用即时窗口 162
14.3.4 理解断点 163
14.3.5 控制程序执行 163
14.4 可视化数据 164
小结 165
作业 165
上机练习 166
第3部分 C#应用 169
第15章 使用文件和流 169
15.1 文件和目录 169
15.1.1 使用路径 169
15.1.2 特殊目录 170
15.1.3 DirectoryInfo类和FileInfo类 171
15.1.4 Directory类和File类 173
15.2 读写数据 176
15.2.1 二进制文件 176
15.2.2 缓冲流 177
15.2.3 文本文件 178
15.2.4 使用File类读写数据 179
小结 180
作业 180
上机练习 181
第16章 使用XML 182
16.1 理解XML DOM 182
16.2 使用LINQ to XML 183
16.2.1 XDocument类 183
16.2.2 XElement类和XAttribute类 184
16.2.3 XName和XNamespace 184
16.3 选择和查询XML 185
16.4 修改XML 187
小结 188
作业 188
上机练习 189
第17章 使用数据库 190
17.1 先决条件 190
17.2 理解ADO.NET 191
17.3 理解LINQ to ADO.NET 193
17.3.1 LINQ to DataSet 194
17.3.2 LINQ to SQL 195
17.4 关于DataTable的常用操作 196
小结 198
作业 198
上机练习 198
第18章 Windows Form应用程序 199
18.1 创建Windows Form程序 199
18.2 Windows Form的工具箱 201
18.3 计算器的实现过程 202
18.3.1 窗体布局 202
18.3.2 为按钮添加事件 203
小结 204
作业 204
上机练习 205
第19章 Web应用程序 206
19.1 ASP.NET概述并创建第一个ASP.NET应用程序 206
19.2 ASP.NET应用程序相关的知识 209
19.2.1 控件与工具箱 209
19.2.2 Web.config 211
19.2.3 IIS服务器 214
19.3 留言板的实现过程 216
19.3.1 数据库设计 216
19.3.2 Web.config配置 217
19.3.3 系统文件结构 217
19.3.4 项目实现 217
小结 219
作业 219
上机练习 219
编后语 220
参考文献 221