第1章 C#语言概述 1
1.1 .NET框架概述 1
1.1.1公共语言运行时 2
1.1.2基础类库 3
1.1.3 .NET框架编程模型 3
1.1.4 .NET程序的编译与运行 3
1.1.5 C#与.NET的关系 5
1.2 Visual Studio 2008.NET集成开发环境 6
1.2.1 Visual Studio 2008.NET的新特性 7
1.2.2 Visual Studio 2008.NET简介 8
1.2.3 Visual Studio 2008.NET中的其他窗口 10
1.2.4 MSDN简介 11
1.3 Visual C#.NET三种应用程序结构 13
1.3.1用Visual C#.NET编写控制台应用程序 13
1.3.2用Visual C#.NET编写Windows应用程序 15
1.3.3用Visual C#.NET编写ASP.NET Web应用程序 17
1.4 C#应用程序的一般结构 18
1.4.1命名空间NameSpace 18
1.4.2程序结构 20
1.5断点设置与程序调试 22
1.5.1如何开始调试 22
1.5.2设置断点 23
1.5.3定位错误 23
1.5.4调试过程 23
1.5.5显示调试信息 23
1.6代码编写命名建议 24
习题 24
第2章 C#编程基础 25
2.1数据类型 25
2.2不同数据类型之间的转换 29
2.2.1显式转换与隐式转换 29
2.2.2装箱和拆箱 31
2.3常量和变量 32
2.3.1常量 32
2.3.2变量 32
2.3.3变量的作用范围(作用域) 33
2.4运算符与表达式 34
2.4.1运算符 34
2.4.2运算符优先级 38
2.4.3表达式 39
2.5控制台应用程序与格式化输出 39
2.5.1控制台输出 39
2.5.2控制台输入 41
2.5.3字符串的格式化输出 41
2.6 C#流程控制语句 41
2.6.1选择语句 42
2.6.2循环语句 46
2.6.3跳转语句 50
2.6.4异常处理语句 52
习题 56
第3章 常用数据类型 57
3.1数组 57
3.1.1数组的声明与初始化 57
3.1.2创建数组实例 59
3.1.3一维数组 60
3.1.4多维数组 65
3.1.5交错数组 68
3.1.6数组的方法和属性 69
3.1.7数组和字符串之间的转换 71
3.2字符串 72
3.2.1 String类 72
3.2.2 StringBuilder类 79
3.3集合 81
3.3.1 ArrayList数组列表 81
3.3.2 Stack堆栈 85
3.3.3 Queue队列 87
3.3.4 Hashtable哈希表和SortedList排序列表 88
3.3.5 BitArray位数组 90
3.4日期与时间处理 90
3.5数学运算 92
3.6随机数 93
3.6.1产生随机数的类System.Random 93
3.6.2随机数方法Next的应用 93
习题 95
第4章 面向对象的编程基础 96
4.1类 96
4.1.1 C#类的声明和对象的创建 96
4.1.2类的成员 98
4.1.3类的构造函数和析构函数 99
4.1.4静态成员和实例成员 100
4.1.5分部类 102
4.2结构类型 102
4.2.1结构类型的声明 103
4.2.2结构变量 103
4.3方法 105
4.3.1方法的定义与调用 105
4.3.2静态方法和非静态方法 110
4.3.3方法的重载 111
4.4属性与索引器 112
4.4.1属性 112
4.4.2索引器 114
习题 118
第5章 面向对象的高级编程 119
5.1类的继承 119
5.1.1继承 120
5.1.2抽象类和密封类 127
5.2多态 130
5.2.1虚方法 130
5.2.2实现多态性 131
5.3接口 133
5.3.1定义接口 133
5.3.2实现接口 134
5.3.3显式接口成员实现 135
5.4委托与事件 136
5.4.1委托 136
5.4.2事件 140
5.5反射 143
5.5.1 System.Reflection命名空间 144
5.5.2如何使用反射获取类型 144
5.5.3获取程序集元数据 146
5.6序列化与反序列化 147
5.6.1二进制序列化与反序列化 147
5.6.2 XML序列化与反序列化 150
5.7 .NET泛型编程 152
5.7.1为什么要使用泛型 152
5.7.2定义泛型方法 153
5.7.3定义泛型类 155
5.7.4使用泛型集合类 157
习题 160
第6章 窗体、控件和组件 162
6.1窗体与对话框 162
6.1.1窗体应用程序的创建、启动和停止 162
6.1.2窗体的常用属性和方法 163
6.1.3窗体的常用事件 166
6.1.4单文档窗体和多文档窗体 167
6.1.5对话框 168
6.2控件共有的基本操作 171
6.2.1控件常用属性和事件 171
6.2.2控件的常用鼠标与键盘事件 172
6.3容器类控件和常用组件 173
6.3.1分组控件 173
6.3.2工具提示组件 174
6.3.3错误提示组件 175
6.3.4定时组件 176
6.4文本操作类控件 177
6.4.1标签控件 177
6.4.2文本控件 178
6.5选择操作类控件 183
6.5.1列表控件 183
6.5.2复选控件 187
6.5.3单选控件 188
6.5.4日期时间选择控件 188
6.6图像操作类控件 190
6.6.1图像与动画控件 190
6.6.2图像列表组件 192
6.7菜单、工具栏与状态栏 193
6.7.1菜单控件 193
6.7.2快捷菜单控件 195
6.7.3工具栏控件 196
6.7.4状态栏控件 196
6.8视图操作类控件 196
6.8.1列表视图控件 196
6.8.2树形视图控件 200
6.9其他常用控件 204
6.9.1选项卡控件 204
6.9.2面板复合控件 205
6.9.3任务栏图标组件 206
习题 207
第7章 目录与文件管理 210
7.1系统环境相关类 210
7.1.1 Environment类 210
7.1.2 System. IO命名空间 214
7.1.3 DriveInfo类 214
7.2目录管理 215
7.2.1 Directory类与DirectoryInfo类 215
7.2.2 Path类 216
7.2.3目录的创建、删除和移动 217
7.2.4 FolderBrowserDialog对话框 218
7.3文件管理 219
7.3.1 File类与FileInfo类 219
7.3.2文件的复制、删除与移动 220
7.3.3文件属性 222
7.3.4 OpenFileDialog与SaveFileDialog对话框 222
7.4文件的读写 225
7.4.1文件编码 225
7.4.2文本文件的读写 225
7.4.3二进制文件的读写 234
习题 237
第8章 图形图像和多媒体编程 239
8.1图形图像绘制基础知识 239
8.1.1 GDI+概述 239
8.1.2 Graphics类 240
8.1.3颜色 241
8.1.4坐标 243
8.1.5 Paint事件 243
8.2绘制基本图形 243
8.2.1创建画笔 243
8.2.2绘制直线 245
8.2.3绘制矩形 246
8.2.4绘制多边形 246
8.2.5绘制曲线 247
8.2.6绘制椭圆和弧线 248
8.3创建画刷填充图形 249
8.4图像处理 252
8.4.1显示图像 252
8.4.2保存图像 253
8.4.3图像的平移、旋转和缩放 255
8.4.4彩色图像变换灰度图像 256
8.5文字处理 258
8.5.1创建字体 258
8.5.2绘制文本 259
8.6应用案例 260
8.6.1可擦写图形轮廓的实现 260
8.6.2单机版五子棋游戏 262
习题 267
第9章 ADO.NET和数据操作 269
9.1 ADO.NET简介 269
9.1.1 ADO.NET设计目标 269
9.1.2 ADO.NET数据访问模型 270
9.2 ADO.NET数据库访问对象 272
9.2.1 SqlConnection对象 272
9.2.2 SqlCommand对象 274
9.2.3 DataTable对象 282
9.2.4 DataSet对象 284
9.2.5 SqlDataAdapter对象 288
9.2.6 SqlDataReader对象 291
9.2.7 SqlParameter对象 293
9.3存储过程 296
9.3.1概述 296
9.3.2创建存储过程 298
9.3.3调用存储过程 300
9.3.4应用举例 301
9.4语言集成查询(LINQ) 303
9.4.1 LINQ简介 304
9.4.2查询表达式 306
9.4.3使用LINQ 309
9.4.4应用举例 312
习题 315
第10章 水晶报表 317
10.1水晶报表基础知识 317
10.1.1简介 317
10.1.2嵌入式与非嵌入式水晶报表 318
10.1.3报表节 319
10.1.4拉模式和推模式 320
10.2水晶报表的设计与显示 321
10.2.1拉模式水晶报表 321
10.2.2推模式水晶报表 324
习题 329
第11章 Web应用程序设计基础 330
11.1页面设计基础 330
11.1.1 HTML 330
11.1.2 CSS 335
11.1.3 JavaScript 341
11.2 Web应用程序中的常用对象 347
11.2.1 Request 347
11.2.2 Reponse 348
11.2.3 Application 349
11.2.4 Session 350
11.3网页切换与网页间的数据传递 352
11.3.1网页的切换 352
11.3.2网页间的数据传递 354
习题 358
第12章 ASP.NET Web服务器控件 360
12.1标准控件 360
12.1.1控件属性 360
12.1.2控件事件 361
12.1.3标签控件 362
12.1.4文本框控件 363
12.1.5按钮控件 365
12.1.6单选控件 367
12.1.7复选框控件 369
12.1.8列表控件 371
12.1.9文件上传控件 374
12.1.10日历控件 376
12.1.11视图控件 378
12.1.12向导控件 379
12.2验证控件 381
12.2.1必填控件 382
12.2.2验证范围控件 384
12.2.3比较验证控件 385
12.2.4正则表达式验证控件 387
12.2.5验证总结摘要控件 388
12.3导航控件 391
12.3.1站点地图 391
12.3.2站点地图路径控件 392
12.3.3菜单控件 393
12.3.4树视图控件 393
12.4数据操作控件 394
12.4.1 SQL数据源控件 394
12.4.2网格视图控件 399
12.4.3数据列表控件 410
习题 414
第13章 Web应用程序开发实例 416
13.1系统分析与总体规划 416
13.1.1需求分析 416
13.1.2总体规划 417
13.1.3功能模块 417
13.2系统框架设计 418
13.2.1三层架构 418
13.2.2项目架构搭建 421
13.2.3数据库设计 425
13.2.4数据访问层实现 430
13.3前台功能模块设计 435
13.3.1会员用户登录页面 435
13.3.2注册页面 437
13.3.3购物流程 439
13.3.4发布商品 444
13.3.5商品搜索 447
13.4后台功能模块设计 448
13.4.1管理员用户登录页面 448
13.4.2管理商品 450
习题 454
参考文献 456