ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:44.70KB ,
资源ID:8168106      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8168106.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C#程序设计项目案例学生信息管理系统.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C#程序设计项目案例学生信息管理系统.docx

1、C#程序设计项目案例学生信息管理系统学生信息管理系统一、需求分析学生信息管理系统是一个现代高校不可缺少的一部分,使用计算机对高校日常学生管理和教学工作进行统一管理,有助于我们快速了解高校教学现状,实现高校教学管理的信息化,提高现在高校的综合竞争能力。(一)系统概述学生信息管理系统是一个可以用于学生信息以及课程构成进行增、删、改、查等操作的应用软件。该系统提供了一个较完整的人机界面供用户进行操作,可根据用户权限,用户可以根据图形化界面对信息的相关各项数据进行管理操作。(二)系统运行环境1、硬件环境处理器:Intel P4或更高内存:1GB硬盘空间:160GB显卡:SVGA显示适配器2、软件环境操

2、作系统:Windows XP/7运行平台:.NET Framework 4(三)功能需求描述学生信息管理系统软件是由学生基本信息,课程基本信息构成,用于对教学管理进行辅助的应用软件。功能需求描述如下:1、考虑到系统的可移植性,需要一个数据库配置模块,用于配置系统的数据库环。2、提供用户登录界面,用户输入正确的用户名和密码后,才可以进入系统。系统应当包含两种用户:超级用户和一般用户。超级用户具有系统操作的所有权限。一般用户需先注册才能使用。 可以进行系统用户管理,主要用于管理系统用户,包括设置一般用户的操作权限和删除一般用户的功能。3、可以对密码进行保护,遗忘密码的情况可以找回密码。4、课程模块

3、用于课程的相关操作,如果是课程已有课程,可以修改课程时间、学分等,如果系统中没有的课程,则添加课程信息的功能。课程信息包括课程名、学期、学分和学时。5、可以进行查询学生信息,可以按照学号、姓名、性别、生日等模糊查询课程信息的功能。6、可以给用户提供一些帮助信息,告诉用户如何操作本系统。二、总体设计(一)设计思路本系统使用C#语言进行开发和实现,总体思想基于面向对象的程序设计。在本系统中使用三层结构,主要实现的是管理系统的增、删、改和查等典型功能,应用了高级语言程序设计中的基本控制结构和事件触发机制,并且包含对数据库的操作和对文件的读、写等操作。在软件开发过程中应用了软件工程的基本理论。(二)系

4、统功能模块学生信息管理系统是能够提高校现代化的一个软件系统,该系统涉及到学生管理、课程管理等功能的结合。根据“高内聚”与“低耦合”原则,将教务系统模块化,下面直接给出系统包括的以下十二个功能模块,其中第三-十模块为本系统的核心功能模块。1、数据库配置模块考虑到系统的可移植性,为系统设计了一个数据库配置模块,用于配置系统的数据库环境。用户只需要提供数据库服务器名称、数据库名称以及一些登录数据库的账号信息即可,该功能是一般数据库应用系统都不可缺少的。2、登录模块登录模块提供用户登录界面,用户输入正确的用户名和密码后,则可进入到系统主窗口,然后可以选择进入相应的子系统。本系统使用了两种类型的系统用户

5、:超级用户和一般用户。超级用户由系统开发者直接添加到数据库中,用户名为“admin”“1234”,超级用户具有系统操作的所有权限。一般用户使用下面第3点介绍的“用户注册模块”注册。3、用户注册模块用户注册模块提供用户注册的功能,用于注册一般用户,注册完成后,默认不具备系统的核心功能操作权限,核心功能操作权限须由超级用户通过下面第4点介绍的“系统用户管理模块”来分配。4、系统用户管理模块本系统的用户管理模块主要用于管理系统用户,包括设置一般用户的操作权限和删除一般用户的功能。5、密码保护信息管理模块密码保护信息管理模块主要用于管理系统用户的密码保护信息。考虑到系统的安全,在设计的学生管理信息系统

6、中,用户密码是用MD5算法加密后再存储到数据库中的。这样,为了能够在忘记密码的情况下,通过提供密码保护信息来修改用户密码,就需要在用户登录系统后设置密码保护信息。为简单起见,本模块的密码保护信息包括以下4个问题:问题1:您的姓名是?问题2:您的出生地是?问题3:您的手机号码是?问题4:您的E-Mail地址是?当用户忘记密码时,可以提供这4个问题的预设答案来“找回”用户密码。6、找回用户密码模块“找回”用户密码模块用于提供“找回”用户密码功能。设计本模块的目的是当用户忘记密码的时候,可以通过本模块提供密码保护信息来重设用户密码。7、课程添加模块课程添加模块用于课程添加的相关操作,如果是系统已有课

7、程,提供修改已有的功能,如果系统中没有的课程,则提供添加课程信息的功能。课程信息包括课程号、课程名、学分、学时和时间。8、课程查询模块课程查询模块用于查询课程信息,本系统提供了按照课程号、课程名、学分、学时和时间模糊查询课程信息的功能。9、选课系统模块选课系统模块是教务系统最核心的功能模块,实现选课系统的相关功能,包括选课、可选人数修改和添加课程等功能。选课数据包括课程号、课程名、选课人数、总价、学分、上课日期和老师。10、选课数据查询模块选课数据查询模块用于选课数据,本系统提供了按照课程号、课程名、选课人数、总价、学分、上课日期和老师精确查询销售数据的功能。11、帮助模块帮助模块用于给用户提

8、供一些帮助信息,告诉用户如何操作本系统。12、关于模块关于模块用于给用户提供一些关于本软件的信息,如软件版本、开发者的联系方式等。三、系统架构本学生管理信息系统采用C/S架构和三层模型实现。四、数据库设计根据前面两节的分析,学生管理信息系统数据库中应该包含5个数据表,分别是:T-User表:用于存放系统用户信息;T-Information表:用于存放密码保护信息;T-Course表:用于存放课程信息;T-SelectCourse表:用于选课信息。接下来介绍一下各数据表的结构及相关说明。(一)系统用户表系统用户表“T_User”用于存放系统用户的相关数据,包含用户名、用户密码和用户类型。其结构如

9、表1所示。表1 系统用户表列名说明数据类型、大小约束userName用户名varchar(13主键userPassword用户密码varchar(32)非空userType用户类型char(8)取值“超级用户”、 “一般用户”(二)密码保护信息表密码保护信息表“T_Information”用于存放系统用户的密码保护信息,包括用户名、姓名、出生地、手机号码、E-Mail地址。其结构如表2所示。表2 密码保护信息表列名说明数据类型、大小约束userName用户名varchar(32)主键,TB_User的外键name姓名varchar(32)answer1出生地varchar(50)answer2

10、手机号码char(11)answer3E-Mail地址varchar(32)(三)课程信息表课程信息表“T-Course”用于存放课程的相关数据,包含课程号、课程名、学分、学时。其结构如表4所示。表4 课程信息表列名说明数据类型、大小约束Con课程号varchar(32)主键Cname课程名varchar(32)非空Ccardit课程学分int非空Csemester开课学期int非空Cperiod总学时int非空(四)选课信息表选课信息表“TB_SelectCours”用于存放选课的相关数据,包含课程号、课程名、学分、学时。其结构如表5所示。表5 销售信息表列名说明数据类型、大小约束Son学号

11、int主键,自动增长标识Son课程号varchar(32)TB_Goods的外键grade院系int非空五、构建三层模型使用类库构建三层模型,如下图1所示:图1三层模型六、详细设计(一)设计Model实体类以User实体类为例,代码如下:/- public class User / / 学号 / public string userName get; set; / / 密码 / public string userPassword get; set; / / 用户分类 / public string userPurview get; set; public string firstlogin

12、get; set; /-(二)数据访问层(DAL)的实现以用户操作为例,代码如下:/-public class UserDAL public DBHelper dh = new DBHelper(); / / 刷新数据 / / public DataSet RefreshData() string sqlStr; DataSet ds = new DataSet(); sqlStr = select * from T_User where userPurview=管理员 or userPurview=一般用户; ds = DBHelper.GetDataFromDB(sqlStr); retu

13、rn ds; / / 刷新数据2 / / public DataSet RefreshData2() string sqlStr; DataSet ds = new DataSet(); sqlStr = select * from T_User where userPurview=一般用户; ds = DBHelper.GetDataFromDB(sqlStr); return ds; / / 添加用户 / / public void addUser(User user) string sqlStr; sqlStr = insert into T_User values( + user.us

14、erName.Trim() + , + user.userPassword.Trim() + , + user.userPurview.Trim() + ,是); DBHelper.Update(sqlStr); / / 删除用户 / / public void deleteUser(User user) string sqlStr = DELETE FROM T_Information where userName = + user.userName + ; /删除账号 string query = DELETE FROM T_User WHERE userName = + user.use

15、rName + ; DBHelper.Update(sqlStr); DBHelper.Update(query); /-(三)业务逻辑层(BLL)的实现以用户操作为例,代码如下:/-public class UserBAl public UserDAL userDAL = new UserDAL(); / / 刷新数据 / / public DataSet RefreshData() return userDAL.RefreshData(); / / 刷新数据2 / / public DataSet RefreshData2() return userDAL.RefreshData2();

16、/ / 添加用户 / / public void addUser(User user) userDAL.addUser(user); / / 删除用户 / / public void deleteUser(User user) userDAL.deleteUser(user); /-(四)用户界面层(UI)的实现以售货员登录为例,代码如下:private void btnSaleLogin_Click(object sender, EventArgs e) try string userName = txtUserName.Text.Trim(); string userPassword =

17、txtUserPassword.Text.Trim(); string regexUser = a-zA-Zw4,31$; if (!Regex.IsMatch(userName, regexUser) MessageBox.Show(用户名格式不正确,请重新输入, 提示); txtUserName.Text = ; txtUserPassword.Text = ; txtUserName.Focus(); return; if (userPassword.Length 32) MessageBox.Show(密码为6-32个字符,请重新输入, 提示); txtUserPassword.Tex

18、t = ; txtUserPassword.Focus(); return; UserBLL userBLL = new UserBLL(); string result = userBLL.UserLogin(userName, userPassword); if (result = OK) UserBLL.loginType = SaleLogin; GoodsSale ob_GoodsSale = new GoodsSale(); ob_GoodsSale.Show(); this.Hide(); else if (result = UserName Error) MessageBox.Show(用户名错误,请重新输入, 提示); txtUserName.Text = ; txtUserPassword.Text = ; txtUserName.Focus(); else MessageBox.Show(密码错误,请重新输入, 提示); txtUserPassword.Text = ; txtUserPassword.Focus(); catch (Exception ex) MessageBox.Show(ex.Message); /-(五)其他模块的实现具体代码详见源代码文件夹。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1