《[精选]C校园新闻发布系统6248.pptx》由会员分享,可在线阅读,更多相关《[精选]C校园新闻发布系统6248.pptx(31页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1ASP.NET网站开发校园新闻发布系统21.需求分析在需求阶段应该将用户的功能需求描述清楚。在需求阶段应该将用户的功能需求描述清楚。使使用用建建模模软软件件(如如Visio、Rational Rose)对对系系统统进进行行需需求求分分析析,并并画画出出系统功能模块图、用例图;系统功能模块图、用例图;新闻发布系统功能分析系统包含的用户管理员:发布、修改、删除新闻管理员:发布、修改、删除新闻浏览者:查看新闻浏览者:查看新闻系统包含的功能新闻类别管理新闻类别管理新闻管理新闻管理新闻查看新闻查看3新闻发布系统功能模块图功能模块图用图直观的描述系统的功能模块4新闻发布系统用例图从用户的角度看系统,系统
2、为不同类别的用户提供的功能52.系统设计什么是系统设计?系统设计包括哪些?系统设计作为软件开发流程中需求分析之后的一个环节,主要是根据需求分析,完成系统的设计。系统设计一般包括:(1)概要设计(2)详细设计(3)数据库设计6总体设计总体设计时序图:用户和系统之间交互(动作)的先后顺序例如:新闻类别添加时序图7数据库设计数据库设计根据新闻发布系统的需求分析及总体设计,新闻发布系统数据库中涉及到的数据表有:新闻类别表UT_News_NewsType新闻表UT_News_NewsContent管理员表UT_Sys_Admin 8数据表结构系统管理员表新闻类别表新闻表9视图视图为了简化SQL语句,提高
3、查询数据的速度,在数据库中建立了视图供页面查询数据使用的视图UV_News_NewsInfo10子任务1 系统登录页面设计3.后台程序实现11界面设计步骤:1.新建网站“学校新闻发布系统”2.进入Default.aspx页面设计窗口,选择“布局”“插入表”,10行、6列3.将最上面一行合并单元格,并插入Logo图片可以在网站目录中添加images目录存放图片资源;将图片直接拖放到表格中4.左边一列合并单元格,插入一个6行4列的表格,放置登录使用的控件包 括 4个 Label、4个 TextBox、3个 Button和 1个 DropDownList。3个RequiredFieldValidat
4、or、1个CompareValidator和1个ValidationSummary验证控件如CompareValidator1用于验证用户输入的验证码是否正确:ControlToCompare:txtCreateCodeControlToValidate:txtCodeDisplay:DynamicErrorMessage:验证码有误Text:*12身份列表框:设置Items属性,将学生项的Selected设为TrueValidationSummary控件:ShowMessageBox=true;ShowSummary=false;另外分别设置另外分别设置“登录登录”按钮,及验证控件的按钮,及
5、验证控件的ValidationGroup属性为属性为”G1”13后台代码的编写:后台代码的编写:数据库连接字符串:在Web.config中保存连接字符串 staticstatic string strConn=ConfigurationManager.ConnectionStrings“strConn”.ToString();/静态变量 OleDbConnection myConn=new OleDbConnection(strConn);string tmp;/用于存放验证码14Load事件事件protected void Page_Load(object sender,EventArgs
6、e)if(!IsPostBack)/页面首次加载时执行 tmp=RndNum(4);/RndNum(4);/随机产生4位验证码 txt_CreateCode.Text=tmp;/显示验证码 txt_CreateCode.ReadOnly=true;/只读 15string RndNum(int VcodeNum)string MaxNum=;string MinNum=;for(int i=0;i VcodeNum;i+)MaxNum=MaxNum+9;MinNum=MaxNum.Remove(0,1);Random rd=new Random();Random rd=new Random()
7、;/随机产生9999999之间的数 string VNum=Convert.ToString(rd.Nextrd.Next(Convert.ToInt32(MinNum),Convert.ToInt32(MaxNum);return VNum;Random.Next(int MinNum,int maxNum);Random.Next(int MinNum,int maxNum);随机产生一个数随机产生一个数随机产生一个数随机产生一个数16点击“登录”按钮当下拉列表框中未选择管理员身份,弹出提示对话框当选择了管理员身份,但账号或密码输入错误时,弹出提示页面输入正确进入后台新闻类别管理页面弹出对
8、话框可以采用执行JavaScript的方法:Response.Write(alert(您不是管理员);location=Default.aspx);Alert对话框;location关闭对话框后进入哪个页面;17protected void btnlogin_Click(object sender,EventArgs e)if(txtCode.Text=txt_CreateCode.Text)/验证码输入一致 if(ddlstatus.SelectedItem.Text=管理员)/下拉列表框选择管理员 if(CheckAdminCheckAdmin(txtNum.Text.Trim(),txt
9、Pwd.Text.Trim()/检查管理员的账号和密码 Response.Redirect(Admin/News/NewsTypeManage.aspx);Response.Redirect(Admin/News/NewsTypeManage.aspx);else Response.Write(alert(用户名或密码错误);location=Default.aspx);else Response.Write(alert(您不是管理员);location=Default.aspx);18/检查用户输入的用户名和密码是否正确 bool CheckAdmin(string adminNum,str
10、ing 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)(Convert.ToInt32(myComm.ExecuteScalar()0)return true;else return fal
11、se;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 strsql=insert into UT_News_
12、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.Trim()+插入成功!;string sURL=NewsTypeManage.aspx;Response
13、.Write(alert(+sMessage+);location.href=+sURL+);“增加新闻类别增加新闻类别”按钮按钮22在Load中查询数据库,在Repeater中显示新闻类别列表:调用自定义函数GetNewsTypeList();返回新闻类型的所有内容public DataTableDataTable GetNewsTypeList(string sqlCommandstring sqlCommand)/打开数据库连接 if(con.State=0)con.Open();/定义并初使化数据适配器 string strSql=sqlCommand;SqlDataAdapter m
14、ydataadapter=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)/调用GetNewsTypeList(),绑定Repeater控件,显示类别列表 string strSql=s
15、elect*from UT_News_NewsType;rp_News_Type.DataSourceDataSource=GetNewsTypeList(strSql);rp_News_Type.DataBind()DataBind();24设置Repeater控件的模板代码 新闻分类名称 修改按钮 删除按钮标题行的设置tr代表Table Rowtd代表单元格25a a href=././Admin/News/ModifyNewsType.aspx?NewsTypeID=%#href=././Admin/News/ModifyNewsType.aspx?NewsTypeID=target=_
16、blank Eval(ID)%target=_blank 修改修改修改修改 asp:LinkButton asp:LinkButton ID=btnDelete ID=btnDelete runat=server runat=server CommandArgument=%#CommandArgument=%CommandName=%#CommandName=Eval(NewsTypeName)%OnClientClick=return OnClientClick=return confirm(confirm(你你你你 确确确确 定定定定 要要要要 删删删删 除除除除 这这这这 条条条条 记记
17、记记 录录录录?););OnCommand=OnCommand=btnDelete_ClickbtnDelete_Click 删除删除删除删除 显示类型的名称“修改”超链接,传递NewsTypeIDNewsTypeID参数参数参数参数“删除”超链接按钮,传递参数ID,弹出提示对话框在新的页面上打开26protected void btnDelete_Click(object sender,CommandEventArgs e)string classname=e.CommandName.ToString();/得到需要删除的记录的新闻分类名称 int classid=int.Parse(e.C
18、ommandArgument.ToString();/得到需要删除的记录的编号(Id)try string strsql=delete from UT_News_NewsType where ID=+classid;OperateData(strsql);OperateData(strsql);string sMessage=新闻分类名称 +classname+删除成功!;string sURL=NewsTypeManage.aspx;Response.Write(alert(+sMessage+);location.href=+sURL+);catch(Exception ex)Respon
19、se.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.Open();OleDbCommand myComm=new OleDbCommand(strSql,myConn);m
20、yComm.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.
21、IsPostBack)txtTypeName.Text=RequestNewsTypeName.ToString();txtTypeName.Text=RequestNewsTypeName.ToString();Page_Load事件读取上一页面通过URL传来的新闻类别名称,并显示在文本框中30protected void btnSubmit_Click(object sender,EventArgs e)string strsql=update UT_News_NewsType set NewsTypeName=+txtTypeName.Text.Trim()+where ID=+clas
22、sid;OperateData(strsql);string sMessage=新闻分类名称修改成功!;Response.Write(alert(+sMessage+);history.go(-1);window.opener.location.reload();window.opener=null;window.close();点击确定按钮,修改新闻类别的名称点击确定按钮,修改新闻类别的名称点击确定按钮,修改新闻类别的名称点击确定按钮,修改新闻类别的名称9、静夜四无邻,荒居旧业贫。3月-233月-23Thursday,March 30,202310、雨中黄叶树,灯下白头人。22:15:342
23、2:15:3422:153/30/2023 10:15:34 PM11、以我独沈久,愧君相见频。3月-2322:15:3422:15Mar-2330-Mar-2312、故人江海别,几度隔山川。22:15:3422:15:3422:15Thursday,March 30,202313、乍见翻疑梦,相悲各问年。3月-233月-2322:15:3422:15:34March 30,202314、他乡生白发,旧国见青山。30 三月 202310:15:34 下午22:15:343月-2315、比不了得就不比,得不到的就不要。三月 2310:15 下午3月-2322:15March 30,202316、
24、行动出成果,工作出财富。2023/3/30 22:15:3422:15:3430 March 202317、做前,能够环视四周;做时,你只能或者最好沿着以脚为起点的射线向前。10:15:34 下午10:15 下午22:15:343月-239、没有失败,只有暂时停止成功!。3月-233月-23Thursday,March 30,202310、很多事情努力了未必有结果,但是不努力却什么改变也没有。22:15:3422:15:3422:153/30/2023 10:15:34 PM11、成功就是日复一日那一点点小小努力的积累。3月-2322:15:3422:15Mar-2330-Mar-2312、世
25、间成事,不求其绝对圆满,留一份不足,可得无限完美。22:15:3422:15:3422:15Thursday,March 30,202313、不知香积寺,数里入云峰。3月-233月-2322:15:3422:15:34March 30,202314、意志坚强的人能把世界放在手中像泥块一样任意揉捏。30 三月 202310:15:34 下午22:15:343月-2315、楚塞三湘接,荆门九派通。三月 2310:15 下午3月-2322:15March 30,202316、少年十五二十时,步行夺得胡马骑。2023/3/30 22:15:3422:15:3430 March 202317、空山新雨后
26、,天气晚来秋。10:15:34 下午10:15 下午22:15:343月-239、杨柳散和风,青山澹吾虑。3月-233月-23Thursday,March 30,202310、阅读一切好书如同和过去最杰出的人谈话。22:15:3422:15:3422:153/30/2023 10:15:34 PM11、越是没有本领的就越加自命不凡。3月-2322:15:3422:15Mar-2330-Mar-2312、越是无能的人,越喜欢挑剔别人的错儿。22:15:3422:15:3422:15Thursday,March 30,202313、知人者智,自知者明。胜人者有力,自胜者强。3月-233月-2322
27、:15:3422:15:34March 30,202314、意志坚强的人能把世界放在手中像泥块一样任意揉捏。30 三月 202310:15:34 下午22:15:343月-2315、最具挑战性的挑战莫过于提升自我。三月 2310:15 下午3月-2322:15March 30,202316、业余生活要有意义,不要越轨。2023/3/30 22:15:3422:15:3430 March 202317、一个人即使已登上顶峰,也仍要自强不息。10:15:34 下午10:15 下午22:15:343月-23MOMODA POWERPOINTLorem ipsum dolor sit amet,consectetur adipiscing elit.Fusce id urna blandit,eleifend nulla ac,fringilla purus.Nulla iaculis tempor felis ut cursus.感感 谢谢 您您 的的 下下 载载 观观 看看专家告诉