C#新闻管理系统课程设计报告DOC.docx
- 文档编号:23643373
- 上传时间:2023-05-19
- 格式:DOCX
- 页数:27
- 大小:2.26MB
C#新闻管理系统课程设计报告DOC.docx
《C#新闻管理系统课程设计报告DOC.docx》由会员分享,可在线阅读,更多相关《C#新闻管理系统课程设计报告DOC.docx(27页珍藏版)》请在冰豆网上搜索。
C#新闻管理系统课程设计报告DOC
武汉软件工程职业学院
课程设计报告
2014-2015学年度第二学期
题目:
新闻管理系统
姓名:
XXX
班级:
网络1302班
系部:
计算机学院
指导教师:
XXX
日期:
2015年6月29日
摘要
新闻系统是网络中最常见、最常用的。
根据调查报告,阅读新闻以65.9%的比例成为使用最多的因特网功能。
因此,设计一个界面友好,功能强大的新闻发布系统十分有必要。
新闻发布系统是上个世纪九十年代互连网技术发展以后才出现的技术,最初表现是解决一些网站的信息动态发布而开发,最初只是简单的发布和显示,应用对于各种不同的站点需要构建不同的系统来满足需要,而且功能十分单一,在九十年代后期,互连网技术进一步发展,网络作为新起的新闻媒介工具,其用户大大增加,对系统的要求也越来越高,新闻发布系统在这样的一个环境中提出、开发、并改进,到现在,新闻系统开发的成功案例已经不计其数,而且已经应用到各种站点上,可以说,各行各业的绝大部分的网站都使用到了新闻发布系统,大量的用户引发了新闻发布系统功能的进一步扩大和深化,给新闻发布系统提出了更高的要求
关键字:
新闻管理系统、数据库、、C#、新闻发布
前言
新闻管理从新闻的管理为中心,是新闻管理思想一个划时代的进步。
新闻信息,是学校所有信息资源中重要的一部分,因而,新闻信息的规范化与量化管理,已成为现代各个学校管理中不可缺少的重要组成部分。
如何帮助学校更好的管理新闻,提高管理效率,增强新闻发布速率,是学校管理重点关心的问题之一,校园原有新闻管理手工制作发布的网页信息不但无法检索堆积如山的信息,而且可能每次更新内容并上传的时候都会使服务中断,导致无法访问,从网上发文,通知和信息交流等,都将给学校的日常新闻管理工作带来了巨大的影响。
需要技术更为先进的校园新闻管理系统。
这次我的设计的课题是“校园新闻管理系统”,目的是对学习的新闻信息进行全面的规划与管理,帮助学校做到:
1、完善体系管理。
2、加强流程控制。
3、实现量化管理。
4、科学管理新闻档案,优化分类,全面反应现阶段的信息情况。
5、管理新闻信息,使新闻明确化。
1设计内容和要求
1.1设计内容
网站功能:
1)用户可以查看、浏览个人信息
2)用户个人信息修改,密码维护功能
3)用户查询、浏览新闻信息
4)用户留言板块
5)退出登录
后台管理:
1)管理员对用户信息进行管理
2)管理员浏览、添加,修改,删除新闻
3)新闻可带相关图片和附件
4)新闻可以进行分类,分类管理
1.2要求
基本要求:
1)要求利用C#的编程思想以及组件开发原理来完成系统的设计;
2)突出C#语言与其它语言不同点(即体现C#的高级功能,如属性概念、接口、事件、委托等);
3)体现可视化编程基本东西,如系统带有菜单、工具栏、状态栏以及一些常用的高级控件。
创新要求:
在基本要求达到后,可进行创新设计,如把系统转化为组件、给系统在数据方面具有导入导出功能等。
2需求分析
2.1系统功能分析
校园新闻的信息管理是基础性的管理工作。
校园新闻管理信息系统的主要作用是系统管理员通过Internet能够方便,快速,简洁的管理校园新闻;普通用户能够快速地浏览新闻。
新闻管理是一个学习发展的重要动力,只有加强新闻管理,充分发挥每一个学生的积极性和创造性,才能不断提高学校的发展。
帮助学校老师同学掌握学校的最新情况,这就是本新闻管理系统需要完成的功能。
2.2性能要求
用C#制作的新闻发布管理系统还可以通过功能强大的Internet网及时的向网民传递最新的新闻信息,有助于信息互动,为互联网的发展了一定的促进作用!
本系统主要的功能有:
管理员权限与普通用户权限。
管理员权限:
新闻类别的管理(对新闻类别的添加,修改,删除,查询),新闻信息管理(对新闻信息的添加,修改,删除,查询),普通用户权限:
新闻信息的浏览(新闻信息更新,查询),新闻评论(新闻评论更新,查询,添加)。
2.3功能要求
通过分析各种新闻门户网站。
并对其共同点抽象化,可以发现一个新闻发布系统主要功能:
1.新闻发布新闻发布功能必须提供简便易用的UI接口,可以方便地发布图文信息,格式化文章等。
2.新闻浏览用户通过新闻浏览功能可以方便地浏览到发布的新闻列表,以及新闻的详细内容。
3.新闻检索用户可以通过某关键字检索网站所有新闻中相符的内容。
4.新闻评论用户通过留言功能可以对所阅读的新闻发表自己的见解。
5.评论审核评论审核犹如一个过滤器,只有通过了评论审核,关于此新闻的评论才可以被访问者阅读。
2.4系统流程图
本系统采用当前流行的B/S设计模式,基于Windows.NET平台构建Web应用程序,把系统划分为数据层、业务逻辑层和表示层。
逻辑体系结构如图3-2所示:
2.5系统总体结构设计
本系统主要包括四个模块:
新闻信息管理,新闻类别管理,新闻信息浏览。
2.6系统的功能模块
根据系统功能要求可以将系统分解成几个子系统模块来分别设计应用程序界面,如图所示:
新闻管理系统分为后台管理员管理与前台用户管理,后台新闻管理员可以对新闻类别管理与新闻信息管理,前台用户(老师、学生)等可以对新闻信息浏览查看并对新闻评论与查看他人评论,如图(2-6-1)。
新闻管理系统流程总图:
(图2-6-1新闻管理系统流程总图)
本系统后台管理页面,分为新闻类别管理与新闻信息管理,新闻类别管理主要是对新闻类别的查询全部、添加、修改、删除等操作。
新闻信息管理主要是对新闻信息的查询全部、添加、修改、删除等操作,如图(2-6-2)。
(图2-6-2新闻管理系统后台管理流程图)
本系统前台管理页面,分为新闻信息浏览管理与新闻信息评论,新闻信息浏览主要是对新闻类别的更新与查询及新闻信息的更新与查询等操作。
新闻信息评论主要是对新闻评论的添加、查询、更新等操作,如图(2-6-3)。
(图2-6-3新闻管理系统前台管理流程图)
3数据库设计
3.1数据项设计
1在本系统中,通过需求分析,我们很容易能到该系统的主体即新闻信息:
News。
2新闻信息必须在某一类别的某一栏目中显示。
3用户可以添加新闻信息,修改和删除新闻。
用户表users。
实体关系:
新闻类别:
新闻信息(一对多);
新闻信息:
新闻评论(一对多)。
3.2数据字典
1.新闻管理的用户名及权限
序号
字段
描述
类型和长度
主键
可空
默认值
1
Adminuser
唯一编号
Varchar(50)
是
否
无
2
Password
类别名称
Varchar(50)
否
是
无
3
quanxian
权限类型
Varchar(50)
否
是
无
表Admin
2.新闻信息
序号
字段
描述
类型和长度
主键
可空
默认值
1
NewsID
编号
int
是
否
无
2
Title
标题
varchar(50)
否
否
无
3
Author
内容
varchar(10)
否
是
无
4
Date
数据
datatime
否
是
无
5
UserId
用户id
Int
否
是
无
6
PubDate
发布时间
datetime
否
是
无
7
Number
访问量
Int
否
是
表News
3.新闻类型
序号
字段
描述
类型和长度
主键
可空
默认值
1
TypeID
唯一编号
int
是
否
无
2
Typename
类别名称
Varchar(50)
否
是
无
表NewsType
3.3数据库安全设计
在本系统中,数据库的安全主要通过数据库的存取控制机制实现的。
首先定义各类管理人员的操作权限即角色,然后依据用户表将登录分配为相应的角色。
角色分系统管理员和普通用户角色。
在用户登录时,提取出用户的角色,不同的角色进入系统后,主页中的菜单是不同的,从而保证每种角色的用户,只能看到的操作到自己权限范围内的数据,其他的数据根本看不到,从而基于角色,实现数据的存取控制的安全性。
主外键约束的关系图:
项目所涉及的各表间关系图:
4新闻系统代码开发与实现
4.1新闻管理系统设计思路
多用户系统一般都是从用户登录模块开始。
用户身份验证可以分为两个阶段:
首先对用户身份进行认证,确认用户是否是有效的系统用户;进而确认用户类型,即验证用户是管理员用户还是普通用户。
前一阶段决定用户能否进入系统;后一阶段根据用户类型决定用户的权限,以及用户的工作界面。
本系统的前台部分不需要进行身份验证,任何人都可以游览已发布的新闻并发表评论。
后台部分需要进行身份验证,Admin用户拥有所有权限,普通用户不能管理发布的信息,包括修改新闻、发布新闻和删除新闻。
后台管理:
新闻类别的管理(对新闻类别的添加,修改,删除,查询),新闻信息管理(对新闻信息的添加,修改,删除,查询),前台浏览:
新闻信息的浏览(新闻信息更新,查询),新闻评论(新闻评论更新,查询,添加)。
4.2前台新闻首页
1、前台用户打开可以查看新闻类别及新闻热点、最新新闻及新闻类型,如图(4-1-1)。
图:
4-1-1
2、点击新闻标题,打开新闻文章,可查看详细内容,可以看到新闻列表,如图(4-1-2)
图:
4-1-2
3、点击新闻测试标题信息时可以看到这个页面的访问量,和现在的时间日期。
如图4-1-3
图4-1-3
首页的代码如下:
通过查询数据库里面的新闻类型来显示出每个不同类型的新闻
protectedvoidPage_Load(objectsender,EventArgse)
{DBHelperdb=newDBHelper();
DataTabledt=db.GetTable("selecttop2*fromNewsorderbydatedesc");
GridView1.DataSource=dt;
GridView1.DataBind();
DataTabledt1=db.GetTable("selecttop2*fromNewsorderbynumberdesc");
GridView2.DataSource=dt1;
GridView2.DataBind();
if(Request.QueryString["newsid"]==null)
{Response.Write("");}
else
{stringid=Request.QueryString["newsid"];
stringnum=string.Empty;
DataRowdr=db.GetRow("selecttypeidfromnewswherenewsid="+id);
DataRowdr1=db.GetRow("select*fromnewstypewheretypeid="+dr["typeid"]);
Label12.Text="首页--"+dr1["typename"];
DataRowdr2=db.GetRow("selecttitlefromnewswherenewsid="+id);
lblTitle.Text=""+dr2["title"]+"";
DataRowdr3=db.GetRow("selectauthorfromnewswherenewsid="+id);
lblAuthor.Text=""+dr3["author"]+"";
DataRowdr5=db.GetRow("selectdatefromnewswherenewsid="+id);
lbldate.Text=""+dr5["date"]+"";
DataRowdr6=db.GetRow("selectContentfromnewswherenewsid="+id);
lblContext.Text=""+dr6["Content"]+"";
DataRowdr4=db.GetRow("selectnumberfromnewswherenewsid="+id);
num=""+dr4["number"]+"";
intn=Convert.ToInt32(num);n++;
lblNumber.Text=n.ToString();
stringsql="updatenewssetnumber="+n.ToString()+"wherenewsid="+id;
intc=db.Execute(sql);}
4.3后台登录管理页面
1、进入系统模块主要是设置一个登陆界面:
在登陆框中分别输入用户的姓名和对应的密码,即可进入新闻管理系统的后台管理系统主页。
如果登陆不成功,屏幕中部的提示信息栏中会显示“用户名或密码错误,请重试!
”的字样,允许用户3次(默认)之内登陆本系统。
用户登陆成功后,进入本系统的后台管理主页,包括新闻类别管理与新闻信息管理两部分。
后台登陆页面:
如图4-2-1
图:
4-2-1
登陆页面的代码:
通过连接数据库来查询是否存在有此用户,并且设置了用户名不可以为空
protectedvoidPage_Load(objectsender,EventArgse)
{TextBox1.Focus();}
protectedvoidButton1_Click(objectsender,EventArgse)
{DBHelperdb=newDBHelper();
if(TextBox1.Text==""||TextBox2.Text=="")
{Response.Write("
Else
{intcount=db.ds_count("selectadminuserfromadminwhereadminuser='"+TextBox1.Text+"'");
DataRowdr1=db.GetRow("selectpasswordfromadminwhereadminuser='"+TextBox1.Text+"'");
if(count==0)
{Response.Write("
Response.End();}
else
{if(TextBox2.Text==dr1["password"].ToString())
{Response.Cookies["username"].Value=TextBox1.Text;Response.Redirect("admin_index.aspx");}
Else
{Response.Write("
protectedvoidButton2_Click(objectsender,EventArgse)(清除功能)
{TextBox1.Text="";
TextBox2.Text="";}}
4.4新闻管理页面
1、新闻类别管理模块主要是对新闻类别的设置,包括对新闻类别(类别名称)的查询、修改、添加、删除等。
主要内容包括:
查询所有的新闻类别,点击类别管理显示所有的新闻类别,可添加新的新闻类别,添加新闻类别时会查询数据库中是否存在此新闻类别,如果存在则屏幕中部的提示信息栏中会显示“此新闻类别已存在,请重新添加!
”的字样。
修改新闻类别,从新闻类别列表中可选择修改新闻类别,选择修改后显示修改页面,修改页面会显示修改之前的信息以方便管理员修改。
删除新闻类别,选择新闻类别列表中要删除的信息点击删除即可。
新闻管理页面:
如图4-3-1
图:
4-3-1
新闻管理界面可以实现对新闻的标题、作者、发布时间、访问量、详细内容,进行修改,删除和选择、更新,并可以实现分页的功能。
代码如下:
删除的代码:
protectedvoidGridView1_RowDeleting(objectsender,GridViewDeleteEventArgse)
{intindex=e.RowIndex;
stringusername=Request.Cookies["username"].Value;
stringnewsid=GridView1.DataKeys[index].Value.ToString();
stringsqlstring="deletefromnewswherenewsid="+newsid;
DBHelperdb=newDBHelper();
intc=db.Execute(sqlstring);
if(c!
=-1)
{
DBHelperdb1=newDBHelper();
DataRowdr=db1.GetRow("selectquanxianfromadminwhereadminuser='"+username+"'");
stringqx=dr["quanxian"].ToString().Trim();
if(qx=="2")
{HyperLink3.Enabled=false;
HyperLink4.Enabled=false;}
if(qx=="1")
{DBHelperdb3=newDBHelper();
DataTabledt=db.GetTable("select*fromNewsorderbynewsiddesc");
GridView1.DataSource=dt;
GridView1.DataBind();}
else{DBHelperdb3=newDBHelper();
DataTabledt=db.GetTable("select*fromNewswherefaburen='"+username+"'orderbynewsiddesc");GridView1.DataSource=dt;
GridView1.DataBind();}}
else
{DBHelperdb1=newDBHelper();
DataRowdr=db1.GetRow("selectquanxianfromadminwhereadminuser='"+username+"'");
stringqx=dr["quanxian"].ToString().Trim();
if(qx=="2")
{HyperLink3.Enabled=false;
HyperLink4.Enabled=false;}
if(qx=="1")
{DBHelperdb2=newDBHelper();
DataTabledt=db.GetTable("select*fromNewsorderbynewsiddesc");
GridView1.DataSource=dt;
GridView1.DataBind();}
else
{DBHelperdb2=newDBHelper();
DataTabledt=db.GetTable("select*fromNewswherefaburen='"+username+"'orderbynewsiddesc");
GridView1.DataSource=dt;
GridView1.DataBind();}}}
更新的代码:
protectedvoidGridView1_RowUpdating(objectsender,GridViewUpdateEventArgse)
{stringusername=Request.Cookies["username"].Value;
intindex=e.RowIndex;
stringnewsid=GridView1.DataKeys[index].Value.ToString();
stringtitle=((TextBox)GridView1.Rows[index].Cells[1].FindControl("TextBox1")).Text;
stringauthor=((TextBox)GridView1.Rows[index].Cells[2].FindControl("TextBox2")).Text;
stringnumber=((TextBox)GridView1.Rows[index].Cells[4].FindControl("TextBox4")).Text;
stringcontent=((TextBox)GridView1.Rows[index].Cells[5].FindControl("TextBox5")).Text;
stringsqlstring="updatenewssettitle='"+title+"',author='"+author+"',number='"+number+"',content='"+content+"'wherenewsid="+newsid;
GridView1.EditIndex=-1;DBHelperdb=newDBHelper();
intc=db.Execute(sqlstring);if(c!
=-1)
{BHelperdb1=newDBHelper();
DataRowdr=db1.GetRow("selectquanxianfromadminwhereadminuser='"+username+"'");
stringqx=dr["quanxian"].To
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 新闻 管理 系统 课程设计 报告 DOC