版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1ASP.NET网站开发校园新闻发布系统21.需求分析在需求阶段应该将用户的功能需求描画清楚。运用建模软件如Visio、Rational Rose对系统进展需求分析,并画出系统功能模块图、用例图;新闻发布系统功能分析系统包含的用户管理员:发布、修正、删除新闻阅读者:查看新闻系统包含的功能新闻类别管理新闻管理新闻查看3新闻发布系统功能模块图功能模块图用图直观的描画系统的功能模块4新闻发布系统用例图从用户的角度看系统,系统为不同类别的用户提供的功能52.系统设计什么是系统设计?系统设计包括哪些?系统设计作为软件开发流程中需求分析之后的一个环节,主要是根据需求分析,完成系统的设计。系统设计普通包括:
2、1概要设计2详细设计3数据库设计6总体设计时序图:用户和系统之间交互动作的先后顺序例如:新闻类别添加时序图7数据库设计根据新闻发布系统的需求分析及总体设计,新闻发布系统数据库中涉及到的数据表有:新闻类别表UT_News_NewsType新闻表UT_News_NewsContent管理员表UT_Sys_Admin 8数据表构造系统管理员表新闻类别表新闻表9视图为了简化SQL语句,提高查询数据的速度,在数据库中建立了视图供页面查询数据运用的视图UV_News_NewsInfo10子义务1 系统登录页面设计3. 后台程序实现11界面设计步骤:1.新建网站“学校新闻发布系统2.进入Default.as
3、px页面设计窗口,选择“规划“插入表,10行、6列3.将最上面一行合并单元格,并插入Logo图片可以在网站目录中添加images目录存放图片资源;将图片直接拖放到表格中4.左边一列合并单元格,插入一个6行4列的表格,放置登录运用的控件包括4个Label、4个TextBox、3个Button和1个DropDownList。3个RequiredFieldValidator、1个CompareValidator和1个ValidationSummary验证控件如CompareValidator1用于验证用户输入的验证码能否正确:ControlToCompare:txtCreateCodeControl
4、ToValidate:txtCodeDisplay:DynamicErrorMessage:验证码有误Text:*12身份列表框:设置Items属性,将学生项的Selected设为TrueValidationSummary控件:ShowMessageBox=true;ShowSummary=false;另外分别设置 “登录按钮,及验证控件的ValidationGroup属性为G113后台代码的编写:数据库衔接字符串:在Web.config中保管衔接字符串 static string strConn = ConfigurationManager.ConnectionStrings“strConn
5、.ToString();/静态变量 OleDbConnection myConn = new OleDbConnection(strConn);string tmp;/用于存放验证码14Load事件protected void Page_Load(object sender, EventArgs e) if (!IsPostBack)/页面初次加载时执行 tmp = RndNum(4);/随机产生4位验证码 txt_CreateCode.Text = tmp;/显示验证码 txt_CreateCode.ReadOnly = true;/只读 15string RndNum(int VcodeN
6、um) string MaxNum = ; string MinNum = ; for (int i = 0; i VcodeNum; i+) MaxNum = MaxNum + 9; MinNum = MaxNum.Remove(0, 1); Random rd = new Random(); /随机产生9999999之间的数 string VNum = Convert.ToString(rd.Next(Convert.ToInt32(MinNum), Convert.ToInt32(MaxNum); return VNum; Random.Next(int MinNum,int maxNu
7、m);随机产生一个数16点击“登录按钮当下拉列表框中未选择管理员身份,弹出提示对话框中选择了管理员身份,但账号或密码输入错误时,弹出提示页面输入正确进入后台新闻类别管理页面弹出对话框可以采用执行JavaScript的方法:Response.Write(alert(您不是管理员);location=Default.aspx);Alert对话框; location封锁对话框后进入哪个页面;17protected void btnlogin_Click(object sender, EventArgs e) if (txtCode.Text = txt_CreateCode.Text)/验证码输入一
8、致 if (ddlstatus.SelectedItem.Text = 管理员)/下拉列表框选择管理员 if (CheckAdmin(txtNum.Text.Trim(), txtPwd.Text.Trim()/检查管理员的账号和密码 Response.Redirect(Admin/News/NewsTypeManage.aspx); else Response.Write(alert(用户名或密码错误);location=Default.aspx); else Response.Write(alert(您不是管理员);location=Default.aspx); 18/检查用户输入的用户名
9、和密码能否正确 bool CheckAdmin(string adminNum, string adminPwd) if (myConn.State = ConnectionState.Closed) myConn.Open(); OleDbCommand myComm = new OleDbCommand(select count(*) from UT_Sys_Admin where AdminName= + adminNum + and PWD= + adminPwd + , myConn); if (Convert.ToInt32(myComm.ExecuteScalar()0) ret
10、urn true; else return false; 19新闻分类管理页面1.在网站中添加目录:AdminNews2.新建NewsTypeManage.aspx页面3.插入8行、3列的表格,合并相关单元格、添加Loge图片、添加4个HyperLink控件和Repeater控件。HyperLink控件的Text属性和NavigateUrl属性如HyperLink1控件的Text=“前往主页; NavigateUrl=“/Default.aspx编写代码:2021protected void btnSumbit_Click(object sender, EventArgs e) string
11、strsql = insert into UT_News_NewsType (NewsTypeName) values ( + txtTypeName.Text.Trim() + ) ; OperateData(strsql); string strSql = select * from UT_News_NewsType ; this.rp_News_Type.DataSource = this.GetNewsTypeList(strSql); this.rp_News_Type.DataBind(); string sMessage = 新闻分类称号 + txtTypeName.Text.T
12、rim() + 插入胜利!; string sURL = NewsTypeManage.aspx; Response.Write(alert( + sMessage + );location.href= + sURL + ); “添加新闻类别按钮22在Load中查询数据库,在Repeater中显示新闻类别列表:调用自定义函数GetNewsTypeList();前往新闻类型的一切内容public DataTable GetNewsTypeList(string sqlCommand) /翻开数据库衔接 if (con.State = 0) con.Open(); /定义并初使化数据适配器 str
13、ing strSql = sqlCommand; SqlDataAdapter mydataadapter = new SqlDataAdapter(strSql, con); /创建一个数据集mydataset DataSet mydataset = new DataSet(); /将数据适配器中的数据填充到数据集中 mydataadapter.Fill(mydataset); return mydataset.Tables0; 23在Load事件中,绑定Repeater的数据源protected void Page_Load(object sender, EventArgs e) /调用G
14、etNewsTypeList(),绑定Repeater控件,显示类别列表 string strSql = select * from UT_News_NewsType; rp_News_Type.DataSource = GetNewsTypeList(strSql); rp_News_Type.DataBind(); 24设置Repeater控件的模板代码 新闻分类称号 修正按钮 删除按钮标题行的设置tr代表Table Rowtd代表单元格25a href=././Admin/News/ModifyNewsType.aspx?NewsTypeID= target=_blank 修正 asp:
15、LinkButton ID=btnDelete runat=server CommandArgument= CommandName= OnClientClick=return confirm( 他确定要删除这条记录? ); OnCommand=btnDelete_Click 删除 显示类型的称号“修正超链接,传送NewsTypeID参数“删除超链接按钮,传送参数ID,弹出提示对话框在新的页面上翻开26protected void btnDelete_Click(object sender, CommandEventArgs e) string classname = emandName.ToS
16、tring(); /得到需求删除的记录的新闻分类称号 int classid = int.Parse(emandArgument.ToString();/得到需求删除的记录的编号Id try string strsql = delete from UT_News_NewsType where ID= + classid; OperateData(strsql); string sMessage = 新闻分类称号 + classname + 删除胜利!; string sURL = NewsTypeManage.aspx; Response.Write(alert( + sMessage + )
17、;location.href= + sURL + ); catch (Exception ex) Response.Write(ex.StackTrace); 27弹出一个对话框的方法:Response.Write(alert( + sMessage + );location.href= + sURL + );location.href代表封锁对话框后显示的页面例如:test.aspx/可用来删除数据库中的数据 public void OperateData(string strSql) if (myConn.State = ConnectionState.Closed) myConn.Ope
18、n(); OleDbCommand myComm = new OleDbCommand(strSql, myConn); myComm.ExecuteNonQuery(); myConn.Close(); 28新闻类别修正页面 ModifyNewsType.aspx 当用户在新闻类别管理页面点击某一类新闻的修正按钮后,转到该页面,并将新闻类别的ID号进展传送29int classid;/接纳上一页面传来的新闻类别id号 protected void Page_Load(object sender, EventArgs e) if (Request.QueryStringNewsTypeID != null) classid = Convert.ToInt32(RequestNewsTypeID.ToString(); if (!Page.IsPostBack) txtTypeName.Text = RequestNewsTypeName.ToString(); Page_Load事件读取上一页面经过URL传来的新闻类别称号,并显示在文本框中30protected void btnSubmit_Click(object sender, EventArgs e
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论