1、资料内容仅供您学习参考,如有不当之处,请联系改正或者删除。.NET程序设计 课程设计报告 班级: 计算机1403 学号: 姓名: 黄世增一、 实验名称作者信息管理系统二、 实验目的1. 进一步掌握并加深”.NET程序设计”课程的基本知识, 理解”.NET程序设计”课程中重点讲解的ASP.NET技术在项目开发中的应用。2. 培养正确的程序设计思想, 提高分析问题、 解决问题的能力。3. 提高学生进行技术总结和撰写说明书的能力。三、 系统设计描述实验设计内容: 本次实验设计的内容是使用ASP.NET技术为某出版社设计并实现一个小型作者信息管理系统。出版社的工作人员登录该系统后, 能够查看该社出版的
2、各类书籍的作者的信息, 并能够对作者信息进行各类查询, 便于工作人员对作者信息进行管理。系统数据库设计: 在SQL Server Express中为作者信息管理系统建立一个名为作者信息管理系统的数据库, 并设计以下2张数据表: 1. 系统管理员表该表用来记录使用本系统的管理员的基本信息, 包括管理员账户及密码。 【思考题】( 1) 数据库中的一条记录中有若干个属性, 若其中某一个属性(注意是组)能唯一标识一条记录, 该属性组就能够成为一个主键。 统管理员表中用户名应设为主键。 ( 2) 用户名和密码都设为varchar字符型。2.作者个人信息表该表用来记录作者个人的基本信息, 包括作者编号、
3、姓名、 联系地址、 电话、 email。【思考题】(1) 表中作者编号应设为主键。(2) 表中作者ID、 电话号码和Email为nchar字符串型, 姓名和联系人地址为nvarchar字符串型。 设计好数据库的两个表后, 分别在两个表中输入数据, 如下图所示: 系统模块设计 1.登录模块设计登录模块应保证出版社工作人员以系统管理员身份正确输入账号和密码后才能登录系统, 同时该模块在页面上显示登录人员账号; 否则, 系统自动跳转回登录页面。 connectionStr = Data Source=.SQLEXPRESS; AttachDbFilename = |DataDirectory|作者信
4、息管理系统.mdf; Integrated Security=True; User Instance=true;数据库的路径使用相对路径。 【思考题】 ( 1) 使用DataReader与DataSet都能够从数据源读取数据。DataReader本身是经过IDbCommand.ExecuteReader()方法进行构建的; 而DataSet则是经过DbDataAdapter.Fill()方法进行填充。另外, 两者的工作方式有明显的不同: DataReader的执行过程不能脱离数据库连接, 也就是在DataReader读取数据的时候不能够使用IDbConnection.Close()方法关闭数据
5、库连接; 而在使用DataSet获取数据时, 能够断开数据库的连接, 因为此时DbDataAdapter已经负责将数据获取到应用服务器中了。根据当前模块需求, 选用DataSet更好一些。 2.作者信息查询模块设计作者信息查询模块应提供列出全部作者信息、 按作者姓名查询、 按作者地址查询等功能。protected void Page_Load(object sender, EventArgs e) if (Session用户名? != null) Label1.Text = Session用户名?.ToString(); else Response.Redirect(login.aspx);使
6、用Session对象保存登录用户账号, 将其传递到一个新的页面并显示。*显示全部作者信息 在页面上放置合适的控件, 显示全部作者信息。protected void gvAll_PageIndexChanging1(object sender, GridViewPageEventArgs e) this.gvAll.PageIndex = e.NewPageIndex; this.gvAll.DataBind(); 实现分页功能。protected void gvAll_RowDataBound(object sender, GridViewRowEventArgs e) /鼠标滑过时, 改变颜
7、色 if (e.Row.RowType = DataControlRowType.DataRow) e.Row.Attributes.Add(onmouseover, c=this.style.backgroundColor;this.style.backgroundColor=#0000FF); e.Row.Attributes.Add(onmouseout, this.style.backgroundColor=c); 当鼠标移动到某一行时变色, 移开时恢复原色, #0000FF是颜色的编码。*按作者姓名查询页面上放置合适的控件, 显示查询结果信息。*按作者地址查询 if (ds.Tabl
8、es0.Rows.Count = 0) /Respinse.Write(对不起, 您查找的记录并不存在! ) Label2.Text = 对不起, 您查找的记录并不存在! ; gvAddress.DataSource = null; gvAddress.DataBind(); 当输入的地址不正确时, 输出对不起, 您查找的记录并不存在! 。 else gvAddress.DataSource = null; gvAddress.DataBind(); Label2.Text = 请正确输入地址! ; 当没有输入地址就查询时, 提示请正确输入地址! 。四、 系统调试及分析没有using System.Data.SqlClient;经过两天的调试, 仍未能找到原因。五、 运行结果六、 总结这次的程序实设计实验是对自己进入大学以来学习.NET程序结果的一次大检验。自己动手, 自己发现和解决问题。发现了自己的许多不足。平时没有掌握好的知识在这次实验中彻底暴露出来, 经过不断思考, 不断查阅资料和上机运行, 解决其中大部分问题, 当然还存在一些问题没有解决。相信在以后的学习能够解决好它们。还有一点体会就是, 书上和老师教的内容是有限的, 我们需要不断地靠自己去学习, 向她人请教, 了解和掌握更多的知识, 这样我们才能编出更好的.NET程序。