目录
章 内 容 学时
第 1章 .NET简介及其开发环境 2
第 2章 C#语言基础 6
第 3章 面向对象程序设计 6
第 4章 WinForm基础 6
第 5章 输入与输出 4
第 6章 数据访问技术 8
第 7~9章 实践项目 ——研究生科研管理系统 /酒店管理系统 /学生选课管理系统 2周
感谢为本书提出建议的所有老师和学生。本书第 1~4章由廉龙颖编写,第 5~6章由王希斌编写,第 7、9章由游海晖编写,第 8章由赵艳芹编写。由于编者水平有限,编写时间仓促,书中难免存在不足之处,希望读者批评指正。
编者
2025年 1月
第 1章 .NET简介及其开发环境 ·····························································································1
1.1
.NET简介 ···················································································································1
1.1.1 .NET Framework······························································································2
1.1.2 C#·····················································································································2
1.1.3 Visual Studio ····································································································3
1.2
搭建开发环境 ·············································································································4
1.3
编程初试 ·····················································································································5
1.3.1
编写 HelloWorld程序 ·····················································································5
1.3.2
使用 Visual Studio的技巧 ·············································································10
1.4
.NET基本概述 ··········································································································12
1.4.1
解决方案与项目 ····························································································12
1.4.2
命名空间 ·······································································································12
1.4.3
Main()方法 ····································································································13
1.4.4
代码注释 ·······································································································14
1.4.5
程序调试 ·······································································································14
第 2章 C#语言基础 ···············································································································18
2.1
C#语法元素 ···············································································································18
2.2
关键字与标识符 ·······································································································18
2.2.1
关键字 ···········································································································18
2.2.2
标识符 ···········································································································19
2.3
数据类型 ···················································································································20
2.3.1
简单值类型 ····································································································21
2.3.2
结构 ···············································································································23
2.3.3
枚举 ···············································································································24
2.3.4 Object·············································································································26
2.3.5
类 ···················································································································27
2.3.6
接口 ···············································································································28
2.3.7
字符串 ···········································································································30
2.3.8
数组 ···············································································································31
2.4
常量与变量 ···············································································································35
WinForm程序设计与实践(第 2版)
2.4.1
常量 ···············································································································35
2.4.2
变量 ···············································································································35
2.4.3
变量的作用域 ································································································35
2.5
运算符 ·······················································································································36
2.5.1
算术运算符 ····································································································36
2.5.2
赋值运算符 ····································································································37
2.5.3
比较运算符 ····································································································39
2.5.4
逻辑运算符 ····································································································40
2.5.5
运算符优先级 ································································································42
2.6
流程控制语句 ···········································································································42
2.6.1
选择结构语句 ································································································42
2.6.2
循环结构语句 ································································································49
2.6.3
跳转语句 ·······································································································55
2.7
数据类型转换 ···········································································································59
2.8
异常处理 ···················································································································62
第 3章面向对象程序设计 ·····································································································67
3.1
面向对象简介 ···········································································································67
3.2
类与对象 ···················································································································67
3.2.1
类的声明 ·······································································································68
3.2.2
对象的创建与使用 ························································································69
3.3
类的数据成员 ···········································································································69
3.4
方法 ···························································································································71
3.4.1
方法的定义与调用 ························································································71
3.4.2
方法的重载 ····································································································73
3.4.3
方法的高级参数 ····························································································74
3.5
构造方法 ···················································································································77
3.6
访问修饰符与 static关键字 ·····················································································79
3.6.1
访问修饰符 ····································································································79
3.6.2
static关键字 ··································································································79
3.7
面向对象的基本特征 ································································································83
3.7.1
封装 ···············································································································84
3.7.2
继承 ···············································································································85
3.7.3
多态 ···············································································································86
第 4章 WinForm基础···········································································································88
4.1
WinForm简介 ···········································································································88
4.1.1
WinForm程序的新建····················································································88
4.1.2
WinForm程序的文件结构 ············································································89
4.1.3
窗体与控件 ····································································································91
4.1.4
属性与事件 ····································································································93
4.2
WinForm常用控件 ···································································································95
4.2.1
文本类控件 ····································································································96
4.2.2
选择类控件 ··································································································101
4.2.3
分组类控件 ··································································································105
4.2.4
其他控件 ·····································································································109
4.3
Windows通用对话框 ······························································································ 116
4.3.1
消息对话框 ·································································································· 116
4.3.2
文件对话框 ·································································································· 117
4.3.3
普通对话框 ·································································································· 118
4.4
Windows窗体设计 ·································································································121
4.4.1
基于单文档的窗体设计 ··············································································121
4.4.2
基于多文档的窗体设计 ··············································································121
第 5章输入与输出 ··············································································································125
5.1
概述 ·························································································································125
5.1.1
文件与流 ·····································································································125
5.1.2
System.IO命名空间····················································································125
5.2
目录操作 ·················································································································126
5.2.1
Directory类 ·································································································126
5.2.2
DirectoryInfo类···························································································127
5.3
文件操作 ···················································································································130
5.3.1
File类 ··········································································································130
5.3.2
FileInfo类····································································································131
5.4
文件读写 ·················································································································133
5.4.1
读写文本文件 ······························································································133
5.4.2
读写二进制文件 ··························································································135
第 6章数据访问技术 ··········································································································139
6.1 数据库基础 ·············································································································139
6.1.1
数据库的基本概念 ······················································································139
6.1.2
数据库访问过程 ··························································································140
6.2 ADO.NET················································································································141
6.2.1
ADO.NET概述 ···························································································141
6.2.2
ADO.NET数据库访问步骤 ········································································142
6.3 ADO.NET数据库访问操作 ····················································································143
6.3.1
使用 Connection对象连接数据库 ······························································145
6.3.2
使用 Command对象执行数据库命令 ························································146
6.3.3
使用 DataAdapter对象执行数据库命令 ····················································152
目 录
WinForm程序设计与实践(第 2版)
第 7章实践项目——研究生科研管理系统 ·······································································156
7.1
需求分析 ·················································································································156
7.2
概要设计 ·················································································································156
7.2.1
架构设计 ·····································································································156
7.2.2
功能设计 ·····································································································156
7.3
数据库设计 ·············································································································157
7.4
实体模型设计 ·········································································································158
7.5
数据访问层设计 ·····································································································163
7.6
业务逻辑层设计 ·····································································································165
7.7
表示层设计 ·············································································································174
7.7.1
系统主窗体设计 ··························································································175
7.7.2
添加学生信息设计 ······················································································178
7.7.3
维护学生信息设计 ······················································································180
7.7.4
添加导师信息设计 ······················································································183
7.7.5
维护导师信息设计 ······················································································185
7.7.6
添加论文成果设计 ······················································································188
7.7.7
维护论文成果设计 ······················································································190
7.7.8
添加竞赛成果设计 ······················································································193
7.7.9
维护竞赛成果设计 ······················································································196
7.7.10
查询导师成果设计 ····················································································200
7.
7.11查询学生成果设计 ····················································································201
第 8章实践项目——酒店管理系统 ···················································································203
8.1
需求分析 ·················································································································203
8.2
概要设计 ·················································································································203
8.2.1
架构设计 ·····································································································203
8.2.2
功能设计 ·····································································································204
8.3
数据库设计 ·············································································································204
8.4
实体模型设计 ·········································································································206
8.5
数据访问层设计 ·····································································································212
8.6
业务逻辑层设计 ·····································································································214
8.7
表示层设计 ·············································································································222
8.7.1
登录设计 ·····································································································223
8.7.2
系统主界面设计 ··························································································224
8.7.3
添加新用户设计 ··························································································227
8.7.4
修改/删除用户设计 ·····················································································229
8.7.5
入住登记设计 ······························································································231
8.7.6
退房登记设计 ······························································································236
8.7.7
住客信息查询设计 ······················································································240
8.7.8
客房信息查询设计 ······················································································245
8.7.9
帮助设计 ·····································································································247
第 9章实践项目——学生选课管理系统 ···········································································249
9.1
需求分析 ·················································································································249
9.2
概要设计 ·················································································································250
9.2.1
架构设计 ·····································································································250
9.2.2
功能模块设计 ······························································································251
9.3
数据库设计 ·············································································································251
9.4
实体模型设计 ·········································································································253
9.5
数据访问层设计 ·····································································································258
9.6
业务逻辑层设计 ·····································································································260
9.7
表示层设计 ·············································································································269
9.7.1
登录设计 ·····································································································269
9.7.2
系统前台主窗体设计 ··················································································272
9.7.3
维护个人密码设计 ······················································································274
9.7.4
选课设计 ·····································································································276
9.7.5
查看课程表设计 ··························································································279
9.7.6
系统后台主窗体设计 ··················································································281
9.7.7
系统信息管理设计 ······················································································283
9.7.8
添加学生信息设计 ······················································································284
9.7.9
维护学生信息设计 ······················································································288
9.7.10
添加课程信息设计 ····················································································292
9.
7.11维护课程信息设计 ····················································································296
9.7.12
维护成绩信息设计 ····················································································302
参考文献 ··································································································································306
目 录