【摘 要】本系统是运用ASP.NET和ADO.NET技术开发,实现了网站新闻的动态管理,使得对信息的管理更加及时、高效,提高了工作效率,具有一般新闻系统的功能,主要包括前台新闻查看区和后台管理区,可为网站提供新闻发布与管理的服务。
【关键词】ASP.NET ADO.NET 新闻 动态管理
1 研究背景
传统的网站新闻管理方式有两种:一种是静态HTML页面,更新信息时需要重新制作页面然后上传页面并修改相应链接,这种方式因为效率太低已不多用;另一种是基于ASP和脚本语言,将动态网页和数据库结合,通过应用程序来处理新闻,这是目前较为流行的做法。但是由于ASP技术本身的局限性使得系统有一些不可克服的缺陷。
ASP.NET不仅仅是下一版本的ASP(Active Server Pages,动态服务器页面),而且是建立动态Web应用程序而重新打造的全新技术,其主要特色包括:
语言的独立性;简单的开发操作,分离程序代码和网页内容;提高了执行效率;
简化部署与组态的操作;支持客户端类型;支持下一代的Web服务;增进适用性;增进延展性;更多的支持工具;更佳的安全机制;会话(Session)可以跨进程、跨机器。
由于ASP.NET的众多优点,该系统选用了ASP.NET来开发设计。
2 需求分析
前台显示新闻部分:用户登录区、显示最热门的前几条新闻、显示推荐的前几条新闻、显示最新的前几条新闻、搜索新闻功能、显示所有新闻分类(即部门)、按分类/部门显示其下的所有新闻、新闻详细信息浏览阅读、图片新闻(自动生成缩略图)以滚动形式在首页显示且只显示前几条、网站友情链接(可在管理中添加设置)、网站公告可显示发布了新闻但没通过审核的一些相关通知等。
后台管理部分:登录验证、根据权限显示相应的管理目录、添加、修改和删除新闻、管理发布新闻、管理审核新闻、分类管理、用户管理、网站风格设置、系统设置等。
3 总体设计
3.1数据库设计
该系统使用SQL Server 2005作为应用程序的数据库,建立了有6张数据表:Nm_Admin表用于存储帐户的信息,Nm_Class表用于存储新闻分类信息,Nm_Links表用于存储友情链接信息, Nm_News表用于存储新闻内容, Nm_Setup表用于存储系统设置信息,Nm_Skins表用于存储页面风格。Nm_News表与Nm_Class表相关联。
在6个数据表中,主要介绍一下新闻表(Nm_News表)中的字段。N_Id新闻编号(N+四位流水号),N_Title新闻标题,N_ClassId新闻栏目编号,N_Intro新闻简介,N_Content新闻内容,N_Author新闻作者,N_Date新闻发布日期,N_Hit新闻点击数,N_IsCommend是否为推荐新闻,N_IsIndex是否为首页新闻,N_IsPic是否为首页滚动图片, N_PicSrc滚动图片存储地址,N_Publisher新闻发布者,N_IsCheck是否通过审核0为未通过审核,1为通过审核。
3.2网站工作流程
打开该系统网站,普通浏览者能浏览、阅读和搜索新闻,能进行注册,注册后为新闻输入员,登录进入新闻后台管理区,只有添加新闻的权限;如登录时为新闻审核员,其不但有添加新闻的权限,还有审核和管理新闻的权限;如为系统管理员,其有新闻后台管理区内的所有权限,除具有新闻审核员所有的权限外,还有添加和管理新闻分类、添加和管理用户、系统、风格和友情链接设置。
在添加新闻时,除常规的添加新闻标题、新闻内容、新闻作者和新闻简介外,还可选择是否为首页新闻、是否为推荐新闻和是否在首页滚动图片(上传图片)等,对新闻内容的字体、字号和字体颜色可以调整,类似Word的一些简单的编辑功能,还可设置超链接和插入表格等。如添加新闻者为新闻输入员,其所添加的新闻需要系统管理员或审核员经审核后才能发布到网上;如是管理员或者审核员添加新闻的话,不需要再经谁审核,直接可以发布到网上。
管理新闻功能包括对任一条新闻内容可作相应修改,也可删除任何一条不再需要保留的新闻。管理新闻分类包括对新闻分类名称作修改,也可将任一分类名删除,删除后其分类下的所有新闻也将被删除。添加用户时,用户等级可为管理员、审核员或者输入员之一,管理用户包括修改用户名、密码和用户等级,也可将任一用户删除。
4 详细设计
4.1页面风格设计
为使该系统的页面美观多样,在设计时使用了8种样式风格。为了在页面设计时方便调用,将其存储于数据库的Nm_Skins(风格样式)表中,各窗体通过调用style.css文件来设计界面外观。
CSS是Cascading Style Sheets(层叠样式表单)的简称,简称样式表,它是一种设计网页样式的技术。CSS代码的基本语句结构为:选择符{属性名:属性值},选择符可以是HTML中任何的标签或自定义标识符,比如P、DIV、IMG甚至BODY都可以作为选择符。
4.2Web.config文件配置
ASP.NET应用程序的配置功能放在Web.config文件中,它包含每一个具体Web应用程序的配置信息。在程序运行时,ASP.NET使用分层虚拟目录结构的Web.config文件提供的配置信息为每个惟一的URL资源计算一组配置设置,然后缓存结果配置设置,以供所有页面对资源的请求使用。
Web.config文件对于访问站点的用户来说是不可见的,而且也是不可访问的,它基于XML,每个配置文件都包含XML标记和子标记的嵌套层次结构。
新闻系统的Web.config文件中的配置:
<appSettings><add key="SqlCon" value="Server=.;uid=sa;pwd=sa;database=NewsManage"></add></appSettings>
4.3通用类代码
基于面向对象的思想,系统将网站内的每一类元素看作为一个实体类,用成员变量来保存对象所具有的特征,用成员方法来表示对象所具有的功能。通过对数据对象的引用(以创建类实例方式),调用数据实体类里的相应函数完成相关功能,对此对象在数据库执行查询、插入、删除和更新操作等。
系统采用统一的连接类,将数据源的数据提取到本地DataSet中,所有数据操作也将在此数据集中进行的,并在指定的时候将数据回填到数据源,以达到良好的效率。
public class Connect//用于系统连接数据库的连接类
{ //通过web.config获取数据库的连接字符串
static string strCon=System.Configuration.ConfigurationSettings.AppSettings["SqlCon"];
static public SqlConnection DBCon=new SqlConnection(strCon);
//Ds数据集,用于保存从数据库中检索的数据
static public DataSet Ds=new DataSet();}
5 总结
该系统是运用B/S(Browser/Server,浏览器/客户端)模式实现,基于.NET平台开发,主要实现了对网站新闻内容信息的浏览阅读、新闻的发布与管理等功能。
参考文献:
[1]攀建.ASP.NET+ADO.NET项目开发实例.清华大学出版社,2004,1.
[2]王华杰,李律松,孙一波等.C#数据库开发技术.清华大学出版社,2003,2.
[3]天极网新技术研究室.ASP.NET完全入门.人民邮电出版社.
[4]启明工作室编著.ASP.NET网络应用系统开发与实例.人民邮电出版社,2005,7.