新闻发布系统(News Release System or Content Management System)又叫做内容管理系统,是一个基于新闻和内容管理的全站管理系统,新闻发布系统是基于B/S模式的WEBMIS系统,本系统可以将杂乱无章的信息(包括文字,图片和影音)经过组织,合理有序地呈现在大家面前。当今社会是一个信息化的社会,新闻作为信息的一部分有着信息量大,类别繁多,形式多样的特点,新闻发布系统的概念就此提出。新闻发布系统的提出使电视不再是唯一的新闻媒体,从此以后网络也充当了一个重要的新闻媒介的功能。
一个可动态管理内容的网站其基础核心就是新闻发布系统即Content Manage System简称CMS。网站各类内容的新增发布和编辑等操作无不依赖于新闻发布系统来实现。新闻发布系统实现了对网站内容的有效化和合理化管理。因此,新闻发布系统是一个成型的网站不可或缺的组成部分。所以,一个网站的开发者,必须要熟练掌握新闻发布系统的开发设计。
通过网络,展示各类新闻及评论信息。
提供新闻浏览、用户注册功能。
设置评论新闻功能,并显示评论信息。
为后台管理提供管理入口。
支持其新闻添加、删除。
新闻发布系统后台对新闻作了详细的分类,前台以分类形式显示新闻的详细信息,满足了人们浏览新闻网时分类查看新闻信息的要求,同时提供评论新闻功能,方便浏览者查找相关的新闻信息。新闻网后台则通过对总管理员设置和管理员添加等模块对系统管理员进行管理,保证了系统的安全性。
Visual Studio.NET是.NET平台下最为强大的开发工具,无论是软件服务商,还是企业应用程序的部署发布,Visual Studio.NET都可以提供近乎完美的解决方案。Visual Studio.NET提供了包括设计、编码、编译调试、数据库连接操作等基本功能和基于开发架构的服务器组件开发平台、企业开发工具和应用程序重新发布工具以及性能评测报告等高级功能。Visual Studio.NET 开发平台里面包含Visual Basic.NET、C#、Visual C++、ASP.NET 以及Visual FoxPro。为了让这套开发平台更容易开发以因特网为基础的应用程序,这个开发平台做了许多和以往不同的改革,这个改革就是.NET Framework。.NET 架构(就是.NET Framework,.NET念作dot Net)就是为了让开发分布式因特网应用程序架构变得更简单容易而发展出来的。
QL Server 2008 在 Microsoft的数据平台上发布,可以组织管理任何数据。可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。可以对数据进行查询、搜索、同步、报告和分析之类的操作。数据可以存储在各种设备上,从数据中心最大的服务器一直到桌面计算机和移动设备,它都可以控制数据而不用管数据存储在哪里。
SQL Server 2008 允许使用 Microsoft .NET 和Visual Studio开发的自定义应用程序中使用数据,在面向服务的架构(SOA)和通过 Microsoft BizTalk Server 进行的业务流程中使用数据。
Windows7 旗舰版。
Visual Studio 2010。
Windows7 旗舰版。
Visual Studio 2010。
本系统包括三大模块:用户浏览模块、新闻管理模块、新闻评论模块。其具体描述如下:
1. 用户浏览模块
(1)今日新闻浏览;
(2)工商学院校内新闻浏览;
(3)宁波外校新闻浏览;
2. 新闻管理模块
(4)管理员登入;
(5)添加新闻;
(6)删除新闻;
(7)删除用户;
3. 新闻评论模块
首先打开首页,可以浏览到今日新闻、国际新闻、国内新闻。在用户还未登入时,无法对国内新闻和国际新闻以及今日新闻进行评论或留言。只有通过用户登入成功后才可以评论今日新闻、国内新闻、国际新闻。首次使用本系统的用户要想浏览并评论各种类型的新闻可以单击注册,跳到用户注册页面注册成为高级用户。
若单击管理,则页面将链接到管理员登入页面,要求输入用户名和密码。如果输入正确则跳到管理员管理页面,否则跳到出错页面提示错误信息。在管理员管理页面,可以显示所有的新闻。管理员可以根据需要适当的添加新闻和删除新闻,也可以删除用户。整个流程如图1-1所示:
图1-1新闻发布系统流程图
1、创建数据库
首先,用SQL server 20008创建一个数据库news,用于保存系统中的所需要保存的数据。
2、数据库的逻辑表设计
本系统中包含五个表:管理员登入表:adminLoad,新闻分类表:newsClass,新闻数据表:newsData,用户登入表:userLoad,新闻评论表: discuss。
图1-2管理员登入表
(2)新闻分类表:newsClass如图1-3所示
图1-3新闻分类表
(3)新闻数据表:newsData如图1-4所示
图1-4新闻数据表
(4)用户登入表:userLoad如图1-5所示
图1-5用户登入表
(5)评论新闻表:discuss如图1-6所示
图1-6评论新闻表
运用脚本连接数据库:
首先引用命名空间:
using System.Data.OleDb;
然后建立数据库连接:
OleDbConnection conn = new OleDbConnection(); //得到一个OleDbConnection
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("news.mdb");//构造一个连接字符串(使用相对路径连接)
conn.Open();//连接打开 即建立了连接
具体实现:点击“详细内容”则查看相应的详细信息,使用GridView控件来实现新闻浏览功能;
首先要在属性中设置AutoGenerateColumns属性为false,即不能让 GridView自动产生列,而是通过编辑Columns属性设置各个列的定义。
操作方法如下:
1.选择GridView控件,然后在选择属性→Columns命令,接着单击属性输入框后面的图标,弹出GridView的列属性对话框。
2.在列属性对话框中,若要增加一个列,首先在“可用字段”框中选择列的类型BoundField,然后单击“添加”按钮将列添加到GridView中。然后在设置DataField属性,该属性的值来自于数据源中的字段。最后在HeaderText中输入文本,将成为在GridView的BoundField列的列名。
登入界面如图所示:
登入界面
具体操作:正确输入用户名和密码才能登录到管理员管理页面,否则跳转到错误页面,重新登录,直到正确为止,也可以点击”用户浏览”跳转到首页。
用户注册界面如图所示:
用户注册界面
具体操作:用户名和密码不为空,否则跳到的错误页面,且密码要跟确认密码一样,否则跳转到的错误页面,正确注册后,注册信息才能被插入到数据库里面,这里没有用到验证控件,而是用了个判断语句。
添加新闻界面如图所示:
新闻添加界面
上传功能,添加如下代码:
protected void Button1_Click(object sender, EventArgs e)
{ string filePath = "", fileExtName = "", mFileName, mPath;
if ("" != FileUpload1.PostedFile.FileName)
{ //获得上传图片的路径
filePath = FileUpload1.PostedFile.FileName;
fileExtName = filePath.Substring(filePath.LastIndexOf(".") + 1);
try
{ mPath = Server.MapPath("upFile/");
mFileName = filePath.Substring(filePath.LastIndexOf("\\") + 1);
String str = mPath + mFileName;
FileUpload1.PostedFile.SaveAs(mPath + mFileName);//图片路径为upFile/+mFileName
OleDbConnection conn;
OleDbCommand cmd;
string olecmd, oleString;
oleString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("news.mdb");
olecmd = "insert into newsdata(fileDirectory) values('";
olecmd += "upfile/" + mFileName;
olecmd += "','";
Page_Load(sender, e);
this.Button1.Text = "上传成功";
this.Image1.ImageUrl = "upfile/" + mFileName;
}
catch (Exception error)
{
Response.Write("<script>alert('上传失败')</script>");
}
}
具体实现: 新闻删除也是使用GridView数据控件来实现的,点击删除按钮则可以删除相对应的新闻内容。
页面如图所示:
用户删除界面
具体实现: 用户删除也是使用GridView数据控件来实现的,点删除字样则删除对应的用户。
具体实现:
评论内容也是使用GridView数据控件来显示评论信息的,文本框用于输入评论的内容,登录者、插入时间插入到数据库,并显示在GridView中,返回按钮用于返回到上一级页面,提交按钮用于将新闻号、评论内容、登录者、评论时间插入到discuss数据库里面,并刷新,显示刚才评论的内容。