《NET程序设计》课程设计报告.docx
《《NET程序设计》课程设计报告.docx》由会员分享,可在线阅读,更多相关《《NET程序设计》课程设计报告.docx(7页珍藏版)》请在冰豆网上搜索。
![《NET程序设计》课程设计报告.docx](https://file1.bdocx.com/fileroot1/2022-11/25/943b70fa-560d-4940-a6fd-26b03c835be6/943b70fa-560d-4940-a6fd-26b03c835be61.gif)
《NET程序设计》课程设计报告
《、NET程序设计》
课程设计报告
班级:
计算机1403
学号:
1411640305
姓名:
黄世增
1、实验名称
作者信息管理系统
2、实验目的
1.进一步掌握并加深“、NET程序设计”课程的基本知识,理解“、NET程序设计”课程中重点讲解的ASP、NET技术在项目开发中的应用。
2.培养正确的程序设计思想,提高分析问题、解决问题的能力。
3.提高学生进行技术总结与撰写说明书的能力。
三、系统设计描述
实验设计内容:
本次实验设计的内容就是使用ASP、NET技术为某出版社设计并实现一个小型作者信息管理系统。
出版社的工作人员登录该系统后,可以查瞧该社出版的各类书籍的作者的信息,并可以对作者信息进行各类查询,便于工作人员对作者信息进行管理。
系统数据库设计:
在SQLServerExpress中为作者信息管理系统建立一个名为作者信息管理系统的数据库,并设计以下2张数据表:
1.系统管理员表
该表用来记录使用本系统的管理员的基本信息,包括管理员账户及密码。
【思考题】
(1)数据库中的一条记录中有若干个属性,若其中某一个属性(注意就是组)能唯一标识一条记录,该属性组就可以成为一个主键。
统管理员表中用户名应设为主键。
(2)用户名与密码都设为varchar字符型。
2、作者个人信息表
该表用来记录作者个人的基本信息,包括作者编号、姓名、联系地址、电话、email。
【思考题】
(1)表中作者编号应设为主键。
(2)表中作者ID、电话号码与Email为nchar字符串型,姓名与联系人地址为nvarchar字符串型。
设计好数据库的两个表后,分别在两个表中输入数据,如下图所示:
系统模块设计
1、登录模块设计
登录模块应保证出版社工作人员以系统管理员身份正确输入账号与密码后才能登录系统,同时该模块在页面上显示登录人员账号;否则,系统自动跳转回登录页面。
connectionStr=@"DataSource=、\SQLEXPRESS;
AttachDb=|DataDirectory|作者信息管理系统、mdf;
IntegratedSecurity=True;
UserInstance=true";
数据库的路径使用相对路径。
【思考题】
(1)使用DataReader与DataSet都可以从数据源读取数据。
DataReader本身就是通过IDbCommand、ExecuteReader()方法进行构建的;而DataSet则就是通过DbDataAdapter、Fill()方法进行填充。
此外,两者的工作方式有明显的不同:
DataReader的执行过程不能脱离数据库连接,也就就是在DataReader读取数据的时候不能够使用IDbConnection、Close()方法关闭数据库连接;而在使用DataSet获取数据时,可以断开数据库的连接,因为此时DbDataAdapter已经负责将数据获取到应用服务器中了。
根据当前模块需求,选用DataSet更好一些。
2、作者信息查询模块设计
作者信息查询模块应提供列出全部作者信息、按作者姓名查询、按作者地址查询等功能。
protectedvoidPage_Load(objectsender,EventArgse)
{
if(Session["用户名?
"]!
=null)
{
Label1、Text=Session["用户名?
"]、ToString();
}
else
Response、Redirect("login、aspx");
}
使用Session对象保存登录用户账号,将其传递到一个新的页面并显示。
*显示全部作者信息
在页面上放置合适的控件,显示全部作者信息。
protectedvoidgvAll_PageIndexChanging1(objectsender,GridViewPageEventArgse)
{
this、gvAll、PageIndex=e、NewPageIndex;
this、gvAll、DataBind();
}
实现分页功能。
protectedvoidgvAll_RowDataBound(objectsender,GridViewRowEventArgse)
{
//鼠标滑过时,改变颜色
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、Tables[0]、Rows、Count==0)
{
//Respinse、Write("
对不起,您查找的记录并不存在!
")
Label2、Text="对不起,您查找的记录并不存在!
";
gvAddress、DataSource=null;
gvAddress、DataBind();
}
当输入的地址不正确时,输出"对不起,您查找的记录并不存在!
"。
else
{
gvAddress、DataSource=null;
gvAddress、DataBind();
Label2、Text="请正确输入地址!
";
}
当没有输入地址就查询时,提示"请正确输入地址!
"。
4、系统调试及分析
没有usingSystem、Data、SqlClient;
经过两天的调试,仍未能找到原因。
5、运行结果
6、总结
这次的程序实设计实验就是对自己进入大学以来学习、NET程序结果的一次大检验。
自己动手,自己发现与解决问题。
发现了自己的许多不足。
平时没有掌握好的知识在这次实验中彻底暴露出来,经过不断思考,不断查阅资料与上机运行,解决其中大部分问题,当然还存在一些问题没有解决。
相信在以后的学习能够解决好它们。
还有一点体会就就是,书上与老师教的内容就是有限的,我们需要不断地靠自己去学习,向她人请教,了解与掌握更多的知识,这样我们才能编出更好的、NET程序。