第一部分 C#语法基础篇 3
第1章 初识C#程序 3
1.1案例场景 4
1.1.1问候程序 4
1.1.2我们现在能做的 4
1.2 C#概述 4
1.2.1 .NET Framework概述 5
1.2.2 C#与.NET Framework的关系 6
1.2.3如何使用.NET Framework创建应用程序 7
1.2.4 C#在.NET企业体系结构中的作用 8
1.3 Visual Studio 2008集成开发环境 8
1.3.1安装Visual Studio 2008开发环境 8
1.3.2 熟悉Visual Studio 2008集成开发环境 11
1.4命名空间 15
1.4.1命名空间声明 15
1.4.2使用指示 16
1.5理解C#程序 19
1.5.1 Main()方法 19
1.5.2控制台I/O 20
1.5.3注释语句的使用 20
1.6 C#命名规则 21
1.7回到案例场景 24
1.7.1基本思路 24
1.7.2代码演练 26
1.8本章小结与习题 27
1.8.1重点回顾 27
1.8.2课后练习 28
第2章 变量、运算符和表达式 29
2.1案例场景 30
2.1.1创建智能运算程序 30
2.1.2我们现在能做的 30
2.2数据类型 31
2.2.1 C#数据类型概述 31
2.2.2值类型 31
2.2.3引用类型 37
2.2.4 CTS类型系统 38
2.3常量和变量 40
2.3.1常量 40
2.3.2变量 40
2.4类型转换 41
2.5运算符 42
2.5.1赋值运算符 43
2.5.2算术运算符 49
2.5.3关系运算符 51
2.5.4逻辑运算符 54
2.5.5条件运算符 56
2.5.6运算符 58
2.6表达式 60
2.7回到案例场景 61
2.7.1基本思路 61
2.7.2代码演练 61
2.8本章小结与习题 62
2.8.1重点回顾 62
2.8.2课后练习 63
第3章 C#流控制语句 65
3.1案例场景 66
3.1.1每周日程安排程序 66
3.1.2我们现在能做的 66
3.2流控制语句概述 67
3.3 if语句 68
3.4 switch语句 70
3.5循环语句 71
3.5.1 while语句 71
3.5.2 do...while语句 72
3.5.3 for语句 73
3.5.4 foreach语句 74
3.6跳转语句 76
3.6.1 break语句 76
3.6.2 continue语句 77
3.6.3 goto语句 78
3.6.4 return语句 79
3.7回到案例场景 80
3.7.1基本思路 80
3.7.2代码演练 82
3.8本章小结与习题 83
3.8.1重点回顾 83
3.8.2课后练习 84
第4章 类和对象 85
4.1案例场景 86
4.1.1汽车信息管理程序 86
4.1.2我们现在能做的 86
4.2面向对象的基本概念 88
4.2.1对象和类 89
4.2.2接口 89
4.2.3封装 89
4.2.4类的实例 90
4.2.5类之间的关系 90
4.2.6抽象类和具体类 91
4.2.7类的多态性 91
4.2.8消息 91
4.3创建类 92
4.3.1创建一个简单的类 92
4.3.2类修饰符 92
4.3.3类的成员 94
4.4域 96
4.4.1声明域 97
4.4.2常数域 98
4.4.3初始化域 98
4.4.4属性 99
4.5对象的构造与初始化 101
4.5.1创建一个类实例 101
4.5.2构造函数 103
4.5.3析构函数 104
4.6方法 105
4.6.1声明方法 105
4.6.2调用方法 107
4.6.3给方法传递参数 108
4.7索引器 112
4.8事件 114
4.9 Visual Studio 2008面向对象编程支持 115
4.9.1类视图窗口 115
4.9.2对象浏览器 116
4.9.3添加类 116
4.9.4类图 117
4.9.5创建类库项目 117
4.10回到案例场景 120
4.10.1基本思路 120
4.10.2代码演练 122
4.11本章小结与习题 125
4.11.1重点回顾 125
4.11.2课后练习 125
第5章 继承和多态 129
5.1案例场景 130
5.1.1汽车信息管理程序 130
5.1.2我们现在能做的 130
5.2创建第一个继承的类 133
5.3派生类中的构造函数 135
5.4继承和再定义成员 138
5.4.1覆盖 138
5.4.2使用base关键字访问基类成员 140
5.4.3访问继承成员 141
5.4.4隐藏基类及其成员 142
5.5抽象类和方法 145
5.6多态 147
5.7 System.Object类 148
5.8接口 153
5.8.1一个简单的接口实例 154
5.8.2接口声明 155
5.8.3接口实现 159
5.8.4继承接口 160
5.8.5使用接口 165
5.9回到案例场景 167
5.9.1基本思路 167
5.9.2代码演练 170
5.10本章小结与习题 172
5.10.1重点回顾 172
5.10.2课后练习 173
第6章 数组 175
6.1案例场景 176
6.1.1产品抽样程序 176
6.1.2我们现在能做的 177
6.2简单数组 179
6.2.1数组的声明 179
6.2.2数组的初始化 180
6.2.3访问数组元素 182
6.2.4使用引用类型 183
6.3多维数组 184
6.4交错数组 186
6.5 Array类 188
6.5.1创建数组 189
6.5.2复制数组 190
6.5.3数组逆向 191
6.5.4数组排序 192
6.5.5 foreach语句 193
6.6回到案例场景 194
6.6.1基本思路 194
6.6.2代码演练 196
6.7本章小结与习题 198
6.7.1重点回顾 198
6.7.2课后练习 198
第7章 集合 201
7.1案例场景 202
7.1.1产品抽样程序 202
7.1.2我们现在能做的 203
7.2集合类型和接口 210
7.3列表 211
7.3.1创建第一个列表 211
7.3.2添加元素 212
7.3.3获得集合大小 213
7.3.4搜索元素 213
7.3.5集合元素排序 216
7.3.6删除集合元素 217
7.4队列 218
7.4.1创建第一个队列 218
7.4.2向队列添加元素 220
7.4.3向队列添加自定义对象 221
7.5栈 222
7.5.1创建第一个栈 222
7.5.2入栈和出栈 223
7.6链表 225
7.7有序表 229
7.7.1创建有序表 229
7.7.2添加元素 231
7.7.3检索元素 231
7.7.4删除元素 232
7.8位数组 233
7.8.1创建第一个位数组 233
7.8.2使用位数组方法 234
7.9数组列表 235
7.10回到案例场景 239
7.10.1基本思路 240
7.10.2代码演练 241
7.11本章小结与习题 242
7.11.1重点回顾 243
7.11.2课后练习 243
第8章 字符串处理 247
8.1案例场景 248
8.1.1培训班学生管理程序 248
8.1.2我们现在能做的 249
8.2字符串概述 257
8.2.1创建第一个字符串 257
8.2.2 String类 258
8.2.3 StringBuilder类 259
8.3字符串操作 260
8.3.1连接字符串 260
8.3.2求字符串子串 262
8.3.3删除字符 263
8.3.4删除字符串空格 263
8.3.5替换字符串 264
8.3.6插入字符串 265
8.3.7比较字符串 266
8.3.8搜索字符串 268
8.3.9分隔字符串 270
8.3.10格式化字符串 270
8.4正则表达式 274
8.4.1正则表达式概述 274
8.4.2正则表达式的匹配 274
8.5回到案例场景 277
8.5.1基本思路 277
8.5.2代码演练 283
8.6本章小结与习题 289
8.6.1重点回顾 289
8.6.2课后练习 289
第9章 异常处理 291
9.1案例场景 292
9.1.1汽车速度控制程序 292
9.1.2我们现在能做的 292
9.2编写第一个异常处理程序 294
9.3异常处理 295
9.3.1 C#异常处理机制 295
9.3.2抛出异常 298
9.3.3异常处理分区 300
9.3.4捕获异常 302
9.3.5 finally块 304
9.4理解异常类 305
9.5使用自定义异常 309
9.6回到案例场景 311
9.6.1基本思路 311
9.6.2代码演练 313
9.7本章小结与习题 315
9.7.1重点回顾 315
9.7.2课后练习 315
第二部分 数据存取技术篇 319
第10章 文件与注册表存取技术 319
10.1案例场景 320
10.1.1银行事务系统 320
10.1.2我们现在能做的 320
10.2文件与流 323
10.3目录管理 324
10.3.1使用DirectoryInfo类 324
10.3.2使用Directory类 329
10.4文件管理 329
10.4.1使用FileInfo类 329
10.4.2使用File类 333
10.5驱动器管理 333
10.6读写文件 335
10.6.1抽象Stream类 335
10.6.2使用StreamReader和StreamWriter类 337
10.6.3使用BinaryWriter和BinaryReader 339
10.6.4使用StringWriter和StringReader 340
10.7读写注册表 341
10.7.1注册表 341
10.7.2使用.NET注册表类读写注册表信息 342
10.8回到案例场景 344
10.8.1基本思路 344
10.8.2代码演练 347
10.9本章小结与习题 348
10.9.1重点回顾 348
10.9.2课后练习 349
第11章 使用ADO.NET操纵数据 351
11.1案例场景 352
11.1.1银行事务系统 352
11.1.2我们现在能做的 353
11.2 ADO.NET对象模型 360
11.2.1 ADO.NET数据提供程序 361
11.2.2 ADO.NET的连接对象 362
11.2.3 ADO.NET的脱机对象 366
11.2.4第一个ADO.NET程序 367
11.3连接数据源 369
11.3.1创建和存储连接字符串 369
11.3.2连接到数据源 373
11.4查询数据 375
11.4.1执行直接数据查询 375
11.4.2执行脱机模式下的连接查询 377
11.4.3执行层次化数据查询 379
11.4.4执行带参数的数据查询 382
11.4.5调用存储过程查询数据 384
11.5查找、过滤与排序数据 387
11.5.1使用DataTable对象查询数据 387
11.5.2使用 DataView对象过滤和排序数据 389
11.6数据更新 390
11.6.1使用Command对象直接更新数据库 390
11.6.2使用CommandBuilder对象生成更新逻辑 393
11.6.3使用DataAdapter对象更新数据 395
11.7回到案例场景 398
11.7.1基本思路 398
11.7.2代码演练 405
11.8本章小结与习题 406
11.8.1重点回顾 406
11.8.2课后练习 407
第12章 使用LINQ查询数据 409
12.1案例场景 410
12.1.1学生选课信息查询程序 410
12.1.2我们现在能做的 411
12.2 LINQ概述 412
12.2.1 LINQ简介 413
12.2.2创建第一个LINQ查询示例 413
12.2.3 LINQ的推迟查询 416
12.2.4连接查询 418
12.2.5查询结果排序 419
12.2.6群组 421
12.3扩展方法 423
12.3.1创建第一个使用扩展方法的LINQ查询示例 423
12.3.2定义和使用扩展方法 425
12.3.3在LINQ中使用Lambda表达式 426
12.4使用LINQ to SQL 429
12.4.1对象关系映射 429
12.4.2使用LINQ to SQL提取数据 430
12.5使用LINQ to DataSet 435
12.6使用LINQ to XML 438
12.6.1使用LNQ to XML功能构造函数 438
12.6.2保存和装载XML文档 440
12.6.3使用XML片段 442
12.6.4查询XML文档 444
12.7回到案例场景 446
12.7.1基本思路 446
12.7.2代码演练 447
12.8本章小结与习题 449
12.8.1重点回顾 449
12.8.2课后练习 449
第三部分 数据表现技术篇 453
第13章 Windows Form编程 453
13.1案例场景 454
13.1.1银行事务系统 454
13.1.2我们现在能做的 455
13.2创建第一个Windows窗体应用程序 457
13.3在窗体中添加菜单与工具栏 462
13.4使用常用窗体控件 466
13.4.1使用Button控件 466
13.4.2使用Label控件 466
13.4.3使用TextBox控件 467
13.4.4使用ComboBox控件 469
13.4.5使用BindingNavigator和BindingSource控件 471
13.4.6使用RadioButton控件 473
13.4.7使用CheckBox控件 477
13.4.8使用ListBox控件和CheckedListBox控件 479
13.4.9使用DataGridView控件 482
13.4.10使用MonthC alendar控件 483
13.4.11使用PictureBox控件 486
13.5回到案例场景 489
13.5.1基本思路 489
13.5.2代码演练 495
13.6本章小结与习题 497
13.6.1重点回顾 497
13.6.2课后练习 498
第14章 ASP.NET数据表现 499
14.1案例场景 500
14.1.1银行事务系统 500
14.1.2我们现在能做的 500
14.2创建第一个ASP.NET Web应用程序 501
14.2.1安装IIS服务器 501
14.2.2构建ASP.NET应用程序 502
14.2.3发布和部署Web应用 504
14.3理解ASP.NET 505
14.3.1认识ASP.NET 505
14.3.2 ASP.NET应用剖析 507
14.3.3理解ASP.NET页面处理流程 508
14.3.3 ASP.NET Page类 511
14.4使用常用Web控件 513
14.4.1使用TextBox控件 514
14.4.2使用DropDownList控件 515
14.4.3使用CheckBox控件和RadioButton控件 517
14.4.4使用Image控件 518
14.4.5使用FileUpload控件 518
14.5使用数据源控件 520
14.5.1认识ASP.NET数据绑定模型 520
14.5.2使用AccessDataSource控件 520
14.5.3使用SqlDataSource控件 524
14.5.4使用ObjectDataSource控件 527
14.5.5使用XMLDataSource控件 536
14.6绑定数据到数据呈现层控件 539
14.6.1绑定域数据到Web Form控件 539
14.6.2 List控件数据绑定 541
14.6.3 Repeater控件数据绑定 543
14.6.4 FormView控件数据绑定 546
14.7创建和使用母版页 547
14.8应用主题与皮肤 550
14.9站点导航设计 553
14.10回到案例场景 555
14.10.1基本思路 556
14.10.2代码演练 560
14.11本章小结与习题 562
14.11.1重点回顾 562
14.11.2课后练习 562
第四部分 经典项目开发篇 565
第15章 项目案例分析:基于ASP.NET的网络商店 565
15.1案例场景 566
15.1.1网络商店系统 566
15.1.2我们现在能做的 566
15.2分析网上商店需求 566
15.3执行系统架构设计 568
15.4数据库设计 568
15.5数据访问层设计与实现 571
15.5.1设计并实现数据公共类 571
15.5.2设计并实现接口类 576
15.5.3设计并实现数据访问类 581
15.5.4设计并实现工厂类 586
15.6业务逻辑层设计与实现 588
15.7呈现层设计与实现 591
15.7.1新建呈现层Web项目 591
15.7.2母版页和首页设计 592
15.7.3典型模块实现 598
15.8发布和部署应用 599
15.9本章小结与习题 601
15.9.1重点回顾 601
15.9.2课后练习 602