1、ASP.NET课程设计报告书题 目: 用户信息管理系统 系 部: 电子与信息工程系学院 专业班级: 11 计算机(1) 姓 名: 张露露 学 号: 1103380109 利用三层架构开发用户管理信息系统设计报告1、设计简述在 web 开发管理信息系统的过程中,应用三层架构能很好地实现客户端功能的分离。在分析三层架构内部的关系后,提出了用户管理信息系统的总体设计方案,同时对系统功能模块和系统的实现过程以及相关技术进行了详细的介绍。二、设计目的在前面编写 ASP.NET 应用程序时,采用了代码分离的程序结构,应用程序的处理逻辑全部放到了 Web 窗体的后台代码文件中,包括用户数据验证、流程控制、相
2、关计算、连接和操作数据库等。使用这种程序架构我们不得不在很多窗体的后台代码文件中书写大量的重复代码,如数据库的连接过程、数据库的操作过程等。这样如果一个地方出错,需要处处修改。而且这中程序架构相当于用户通过 Web 窗体直接连接和操作数据库,降低了程序安全;同时当业务逻辑比较复杂时,用户访问量很大时,会造成 Web 服务器承受压力过大,难以实施负载均衡。利用 Web 应用程序分层架构可以较好的解决这些问题。 任何一个组织机构或部门的业务系统在运行的过程中都避免不了涉及到登陆认证和组织机构、用户管理等功能,当项目逐渐增多的时候发现这几个功能非常的近似,在不同的项目中开发相似的功能,势必会浪费人力
3、、物力和财力,也会造成用户使用不方便、组织机构混乱等现象。如果能包装成一个服务组件会大大提高开发的速度,减少项目成本。本文阐述的是跨平台用户信息授权认证接口系统。该系统基于.net 平台,采用 技术。能够实现身份的统一认证和管理组织结构,充分发挥组织机构不同应用系统用户的集中管理,改变不同应用系统管理松散的局面。三、设计步骤1 功能需求分析、系统总体结构设计,功能模块的划分、画出流程图。2 数据库的设计。3 各个功能模块的设计及实现。4 综合调试、运行及发布。四、设计要求(4.1)设计目标要求本次综合实训要求学生完成一个具有实用价值的用户管理信息系统,应达到如下的设计要求: 1 登录模块用户
4、身份的识别、用户输入的验证。2 个人信息的管理包括修改现有的个人记录信息情况3 用户信息管理所有用户信息的、添加、修改、删除。(4.2)系统的性能要求要求系统界面美观,布局合理,菜单设置方便操作;系统各项功能正常。 5、需求分析(5.1)系统需求分析本系统的具体要求为:1.通过使用计算机能方便地维护(包括插入、删除、修改)用户信息;2.能查询和修改个人信息3.系统具有操作方便、简捷等特点。(5.2)功能需求分析1.登陆页面:用户身份的识别、用户输入的验证、2.用户注册页面:添加新的用户以及基本的相关信息3.用户个人信息管理:查询,修改现有的个人记录信息情况4.管理员管理界面:所有用户信息的查询
5、、添加、修改、删除等6、系统模型简述(6.1)三层结构图(6.2)系统功能模块(6.3)数据库表的结构(1)user 表的结构如下:用户管理信息系统普通用户用户注册登录系统信息维护系统管理员登录系统添加用户删除用户信息维护数据访问层(DAL )业务逻辑层(BLL) 表现层(WebUI)(2)Admin 表的结构如下:七、部分设计步骤以及代码的分析(一)创建数据访问组件 创建空白解决方案 UserManage(注意指定好目录路径和解决方案名称) 给空白解决方案添加数据库访问组件:文件-新建-项目-类库-输入类库名称(DAL),选择保存路径,在“解决方案”下拉列表中选择“添入解决方案”如图所示:
6、在 DAL 中编写数据访问类 DBAccess.cs;相关代码如下图所示:namespace DALpublic class DBAccessprotected static SqlConnection conn = new SqlConnection();protected static SqlCommand cmd = new SqlCommand();public DBAccess() public static void Open()string strconn = System.Configuration.ConfigurationSettings.AppSettings“Conne
7、ctionString“;if (conn.State = ConnectionState.Closed)conn.ConnectionString = strconn;cmd.Connection = conn;tryconn.Open();catch (Exception e)throw new Exception(e.Message);public static void Close()if (conn.State = ConnectionState.Open)conn.Close();conn.Dispose();cmd.Dispose();public void ExeSql(str
8、ing sql)Open();trycmd.CommandText = sql;cmd.ExecuteNonQuery();Close();catchClose();public int ExeSqlRows(string sql)Open();trycmd.CommandText = sql;/ int rowCount = cmd.ExecuteNonQuery();/-下面这段代码是需要改进int rowCount = 0;SqlDataReader srd = cmd.ExecuteReader();while (srd.Read()rowCount+;/-上面这段代码需要改进Clos
9、e();return rowCount;catchClose();return 0;public DataSet GetDataSet(string sql)Open();DataSet ds = new DataSet();SqlDataAdapter da = new SqlDataAdapter();cmd.CommandText = sql;da.SelectCommand = cmd;tryda.Fill(ds, “datatable“);Close();catchClose();return ds;public SqlDataReader GetDataReader(string
10、sql)SqlDataReader dr = null;tryOpen();cmd.CommandText = sql;cmd.CommandType = CommandType.Text;dr = cmd.ExecuteReader();catchtrydr.Close();Close();catchClose();return dr;public DataTable GetDataTable(string sql)/passSqlDataAdapter da = new SqlDataAdapter();DataTable dt = new DataTable();tryOpen();cm
11、d.CommandType = CommandType.Text;cmd.CommandText = sql;da.SelectCommand = cmd;da.Fill(dt);catch (Exception e)throw new Exception(e.Message);finallyClose();return dt;public void UpdateDataSet(DataSet ds, string str)Open();SqlDataAdapter da = new SqlDataAdapter(str, conn);SqlCommandBuilder cmdbld = ne
12、w SqlCommandBuilder(da);da.Update(ds, “datatable“);ds.AcceptChanges();Close(); 右键点击 DAL-生成,编译创建数据库访问组件项目,得到 DAL.dll 文件。(二)创建业务逻辑组件 通过新建菜单,在 UserManage 解决方案中创建业务逻辑组件 BLL。 在 BLL 中首先要添加对数据库访问组件 DAL 的引用,方法是:右击 BLL 的“引用”-选择“添加引用”-在“添加引用”对话框中选择“项目”选项卡-选中“DAL”-单击“确定”。 再在 BLL 中编写业务逻辑类 UserManage.cs(三)创建表现层
13、右击解决方案-选择新建网站(这里将网站项目名设为 WebUI,并设置正确的目录路径) 右键点击网站-添加引用-选择对 BLL 的引用 再设计相应的 Web 窗体。 (1)登陆页面如下图(2)用户注册页面如下图:相关代码如下图:public partial class Register : System.Web.UI.Page UserManager UM = new UserManager();protected void Page_Load(object sender, EventArgs e)protected void AddNewSave_Click(object sender, Ev
14、entArgs e)string vUserName = TextBox1.Text.Trim();string vPassword = TextBox2.Text.Trim();string vRealName = TextBox3.Text.Trim();string vSex = RadioButtonList1.SelectedItem.Text.Trim();string vTel = TextBox4.Text.Trim();string vEmail = TextBox5.Text.Trim();string vAddress = TextBox6.Text.Trim();str
15、ing vNote = TextBox7.Text.Trim();UM.InsertExeSql(vUserName, vPassword, vRealName, vSex, vTel, vEmail, vAddress, vNote);string msg = UM.msg;Response.Write(“alert(“ + msg + “);“);(2)个人信息管理页面如下图:(3)用户信息管理页面如下:8、总结(8.1)不足由于自己的分析设计和经验不足,该系统设计和实现过程中,还有许多没有完善的地方,比如数据的类型没有定格好,文档和代码有的没条理,不清晰,用户界面设计不是很美观,异常处理比较差等多方面问题。(8.2)感悟本系统的设计实现了用户的集中管理和授权,为不同信息平台提供了验证授权及信息管理的接口,进一步理顺了组织机构的层层关系,方便用户使用。随着办公自动化的进一步普及,用户服务系统的构建,将进一步提升信息化水平的发展,节约信息系统的运行成本。