开篇:润墨网以专业的文秘视角,为您筛选了一篇浅淡基于ASP.NET的网站CMS新闻管理模块的设计与实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
【摘 要】CMS是Content Management System的缩写,意为“内容管理系统”。它可以加快网站开发的速度,让非专门人员也可以对网站进行日常的维护和内容更新,提高了工作效率,减少了开发的成本。新闻管理模块作为cms的核心模块,它可以进行新闻的、修改和删除。本文将围绕该模块进行阐述。
【关键词】 CMS 新闻模块
新闻管理模块主要用于新闻的、修改和删除,本模块基本和SQLSERVER2005开发,它的实现流程如图1所示。
图1 新闻管理模块实现流程
一、新闻模块数据设计
假设新闻栏目已经固定好了,有“新闻”、“娱乐”、“体育”和“财经”,在SqlServer2005数据库中建立一个表“NewsInfo”,它包含新闻的主要属性,包括新闻所属栏目、标题、内容、来源、新闻日期等。结构设计如表1所示。
字段名 字段类型 说明
NewsID int 新闻编号,自动生成,用于惟一标识,设为主键
NewsChannel int 所属栏目
NewsTitle nvarchar(100) 新闻标题
NewsContent ntext 新闻内容
NewsSource nvarchar (100) 新闻来源
NewsDate datetime 新闻日期
表1 新闻表的结构
二、新闻模板
新闻模板是将新闻数据添加到数据库中,我们通过界面和代码分离的方式实现新闻模板的设计,新闻模块的实现流程如图2所示。
图2 新闻模块实现流程
(一)设计数据库操作方法
要将新闻数据添加到数据库中,需要设计新闻数据的操作方法。我们建立一个新闻操作类,命名为“NewsManager”。数据库操作类使用微软公司提供的SqlHelper类。在类中添加保存新闻的方法,主要代码如下所示:
Public class NewsManager
{
Public void AddNews(string NewsChannel,string NewsTtitle,string NewsContent,string NewsSource,string NewsDate,string NewsEditor)
{
using (SqlConnection conn = new SqlConnection(SqlHelper.CONN_STRING))
{
conn.Open();
SqlHelper.ExecuteNonQuery(conn, CommandType.Text, "insert into newsinfo values(@channel,@title,@content,@source,@date,@editor)" ,new SqlParameter("@channel ", NewsChannel),new SqlParameter("@title", NewsTtitle),new SqlParameter("@content ", NewsContent) ,new SqlParameter("@source", NewsSource) ,new SqlParameter("@date", NewsDate) ,new SqlParameter("@editor", NewsEditor));}}}
(二)新闻模板设计
在新闻模板中加入必要的新闻元素,标题、来源、时间用文本框控件实现,新闻内容部份使用Fckeditor编辑器。FCKeditor是一个专门使用在网页上属于开放源代码的所见即所得文字编辑器。它志于轻量化,不需要太复杂的安装步骤即可使用。它的功能强大,易于操作,界面友好,是目前最流行的编辑器之一。它可和PHP、JavaScript、ASP、、ColdFusion以及Java等不同的编程语言相结合。新闻编辑模板如图所示:
(三)实现新闻的后台代码
项目开发中,一般界面层不允许出现有关数据库的任何代码,所以需要写一个新闻管理类”NewsManager”实现数据库的操作。在”NewsManager”类中加入添加新闻的方法”AddNews”。新闻的事件代码如下:
Protected void PublishButton_Click(object sender,EventArgs e)
{
//初始化新闻操作类
NewsManager news = new NewsManager();
//调用添加新闻方法
bool result = news.AddNews(NewsChannel,txtTitle.Text,Fckeditor1.value,txtSource.Text,
txtDate.Text,txtEditor.Text);
//判断添加操作的执行结果
If(result)
//提示成功信息
Literal1.Text = “新闻成功”;
}
三、新闻修改和删除功能
在”NewsManager”类中加入修改和删除新闻的方法。
(一)修改新闻
修改新闻需要给UpdateNews方法传递新闻ID、标题、内容、来源、时间、作者等参数的值。修改新闻事件代码如下:
Protected void UpdateButton_Click(object sender,EventArgs e)
{
//初始化新闻操作类
NewsManager news = new NewsManager();
//调用添加新闻方法
bool result = news.UpdateNews(NewsID,txtTitle.Text,Fckeditor1.value,txtSource.Text,
txtDate.Text,txtEditor.Text);
//判断添加操作的执行结果
If(result)
//提示成功信息
Literal1.Text = “新闻修改成功”;
}
(二)删除新闻
删除新闻只需要给DeleteNews方法传递新闻ID的值,方法将根据新闻ID的值删除对应的新闻。删除新闻事件代码如下:
Protected void DeleteButton_Click(object sender,EventArgs e)
{
//初始化新闻操作类
NewsManager news = new NewsManager();
//调用添加新闻方法
bool result = news.DeleteNews(NewsID);
//判断添加操作的执行结果
If(result)
//提示成功信息
Literal1.Text = “新闻删除成功”;
}
四、结语
本文简单介绍了CMS新闻管理模块的设计原理与实现方法,能够满足最基本的CMS新闻管理需求。在实际项目中还有很多功能需要扩展和完善,比如,生成静态html文件、附件上传等。随着互联网技术的发展,对CMS也提出了更多更高的要求。因此,需要我们不断的学习和研究。
参考文献:
[1]王小科、赵会东程序开发范例宝典(C#)(第3版) [M].人民邮电出版社,2012年5月.
[2]刘基林 3.5 典型模块开发.人民邮电出版社,2008年7月.
[3](美)惠伦等著,黄湘情,谢琳,张静妍译.SQLSERVER2005管理员手册.人民邮电出版社,2010年6月.