维普资讯 http://www.cqvip.com
利用AS P.N ET设计实现乡级 电子政务网站新闻管理系统 张六成(开封大学摘张伟 475000) 河南要利用ASP.NET和ADO.NET技术开发乡级电子政务网站新闻管理系统,实现了网站新闻的动态管理使得系统的开发和对 信息的管理更加及时、高效。同时对系统的开发原理、系统的功能特点和设计方案进行了介绍。 ,关键词 ASP.NET 新闻管理系统 电子政务 随着Intemet的普及,越来越多的乡级地方建立了自 技术与ASP技术的不断更新,使得PHP技术稍嫌落后: 己的wwW网站,以此体现形象,发布各类法规、和 文件公告,提供职能部门办事程序,与社会公众和企业进行交 流和沟通,与合作伙伴建立联系,以及开展招商引资等。其中新 闻管理系统是构成网站的一个重要组成部分,它具有重要作 用。此类系统的开发和应用具有一定的现实意义。 一(3)ASP技术:类似于PHP技术,开发简便,快速,加上I— IS的功能支持,是比较简易快速的开发技术; (4)ASP.net:可以说是ASP技术的替代技术。是ASP的一 大进步,在Microsoft.NET Frmewoark的强大支持下,可以使用 c#、VB、Javascript三种语言来编写代码,采用预先编译技术,使 得代码安全性加强。 、开发技术的选择分析 对于网站新闻管理系统就现在开发技术来说,主要集中 基于ASP和脚本语言,将动态网页和数据库结合。通过应 用程序来处理新闻,是目前较为流行的做法。但是由于ASP本 身的局限性使得系统有一定的缺陷,而采取了ASP.NET技术 的系统在性能上有了很大的改善,其主要表现在以下几方面: 分为三大类: 1.C/S结构系统:是传统开发模式,一般以数据库和客户 端的两层结构实现,也有加入中间件的三层或多层结构,但是 无法满足现在的远程网络办公和移动办公,逐渐在被取代; 2.C/S+Web技术:是为了补充C/S结构的不足.在C/S基 础上加入Web技术来实现对远程数据的获取.但拥有一定局 限性,如数据及时更新、软件升级等问题就无法很好解决; ASP.NET页面只需要一次编译后不需要重新编译.直到 该页面被修改或Web应用程序重新启动。这使得在多次访问 时速度有了极大的提升: ASP.NET通过ADO.NET提供的DataGrid等数据库元件 可以直接和数据库关联: 3.B/S结构系统:是援用动态网页技术.加入现代软件开 发技术开发理念,完全适应网络办公和移动办公需求.也是开 发网站新闻管理系统的首选技术。 就B,s结构的开发。具体技术又有多种选择: JSP+J2EE,ASP+IIS,ASP.net+Microsoft.NET Framework, ASP.NET支持应用程序的实时更新。不必关掉网络服务 器或者甚至不用停止应用程序的运行就可以更新应用文件。应 用程序文件永远不会被加锁,因此甚至在程序运行时文件就可 以被覆盖。当文件更新后.系统会温和地转换到新的版本; ASP.NET采取”code-behind..方式编写代码使得代码更易 PHP+Apache,这几门技术可以说各有其优缺点,分析如下: (1)JSP技术:具有良好的跨平台性,加上J2EE功能十分 于编写,结构更清晰,降低了系统的开发与维护的复杂度和费用。 通过上述分析。可以看出开发乡级电子政务网站新闻新 强大,但是J2EE的布置使开发成本显得略高。而且没有良好的 安装界面; (2)PHP技术:是早期动态网页技术中的强手.但随着JSP 闻管理系统,首选是采用ASP.net技术.尤其是对于那些些财 力有限.技术力量薄弱的乡级地方,由于该技术易于服务 器的维护.成本相对较低,开发周期较短,因此还是具有很大的 诱惑力。 动态:Sliicon Graphics软件制造公司申请破产保护,将继续改组,力图恢复财 政健康的发展态势。 办公自动化杂志・ll・ 维普资讯 http://www.cqvip.com
二、系统的开发原理 l、基于ASP.NET技术的系统结构模型 ASP.NET结构是一个三层系统:UI层、业务逻辑层和数据层, 如图1所示。 uI层 户登录通过权限判断,普通用户只能浏览、阅读和查询新闻.注 册用户除了可以完成普通用户的操作外,还可以进入新闻管理 模块进行新闻录入、修改和删除的操作。注册用户除系统管理 员外只能对自己录入的新闻进行删改操作。 2、系统的功能特点 (1)操作简单、界面友好:完全控件式的页面布局,使得新 闻的录入工作更简便;许多选项包括新闻类别、来源部门等只 需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用 客户端: Web浏÷ 览器 : 户随时清楚自己的操作情况。 (2)即时可见:对新闻的处理(包括录入、修改、删除)将立 即在主页的对应栏目显示出来,达到“即时发布、即时见效”的 图1 ASP.NET的系统结构模型 功能 UI层负责与用户交互,接收用户的输入并将服务器端传 来的数据呈现给客户 业务逻辑层负责接收浏览器传来的请求并将请求传给数 据层,同时将请求处理结果发给浏览器。它由Web表单、XML Web服务和组件服务组成。其中Web表单是ASENET应用程 序的核心所在,它是向客户呈现数据和信息的基础.也是响应和 处理客户与显示的Web表单交互生成的信息和数据的基础。 数据层是通过ADO.NET操纵数据为事务逻辑层提供数 据服务,如存储数据操作结果、返回数据检索结果等。 2、ADO.NET访问数据库的原理 与数据库相连.ADO.NET提供了如下三种方式:通过 ODBC相连;通过OLEDB相连;直接与SQL Server相连。三种 方式由于应用层次的差异,使得效率由低到高,性由高到 低。对于相连数据库的数据处理.也有两种方式,即一种是通过 DataSet来隔离异构的数据源:另一种是以流方式从数据源读 取(DataReader方式)。 图2系统功能结构图 (3)功能完善:包括常见网站的新闻管理的各个方面:新 闻录入、浏览、删除、修改、检索等各个方面,完整地实现了网站 对即时新闻的管理要求。 (4)方便移植:针对不同的地方,只需要稍作修改就 可以开发出适合自己特点的网站新闻管理系统! 传统的应用程序是通过先建立到数据库的连接.在程序 的整个运行过程中维护连接的方式来设计的。ASP.NET采取了 断开连接方式的数据结构。当浏览器向Web服务器请求网页 四、系统的详细设计 系统的主要功能是通过几个功能模块来实现的。具体的 设计过程如下: 时,服务器处理这个请求,并将所请求的网页发送给浏览器。然 后连接就被断开,直到浏览器发出下一个请求。 ADO.NET的另一个创新是引入了数据集(Datase0。一个数 据集是内存中提供数据关系图的高速缓冲区。数据集对数据源 一(1)系统登录:该模块负责将用户分为普通用户和注册用 户来实现用户权限的管理。 (2)新闻浏览:该模块负责分页列出网站所有新闻的信 息.包括标题、类型、来源部门字段及发布日期,每条新闻的标 题被做成一个超链接.点击它们就能跳转页面进行新闻阅读。 (3)新闻阅读:在其他页面中点击标题链接即进入新闻阅 无所知,它们可以由程序或通过从数据仓库中调入数据而被 生成、填充。不论数据从何处获取,数据集都是通过使用同样的 程序模板而被操作的,并且它使用相同的潜在的数据缓冲区。 读页面,此时,每条新闻的详细信息将被取出,包括内容、标题、 三、系统的功能设计 l、系统的功能结构 该新闻管理系统可以在Windows 2000 Server操作系统平 台上运行。Web服务器为IIS,数据库服务器为Microsoft SQL Server 2000.开发工具采用的Microsotf Visual Studio.NET和 DreamWeaver。图2给出系统的功能结构图。其工作流程为:用 关键词等,并按照相对固定的格式放置在页面的不同区域,所 有新闻使用大致相同的页面布局,只是各字段对应的内容不同 而己:另外,页面其它位置,可以动态放置其他元件,如网站标 志Logo、页面广告Banner等链接图片,这样可以很容易地实现 图文并茂的阅读效果。 (4)新闻查询:该模块提供了新闻查询功能,输入待查找 的内容及选定分类信息可以快速地找到符合条件的新闻,并输 ・12・办公自动化杂志 动态:英特尔宣布把前一阶段分别命名的台式机和笔记本多核处理器CometMerom 统一命名为Core 2 Dwo一一作为新的多核处理器品牌。 维普资讯 http://www.cqvip.com
出查询结果。 (5)新闻管理:该模块负责分页罗列登录的注册用户曾发 布过且未删除的新闻信息,用户可以对该条新闻进行删除、修 改。非新闻发布者除系统管理员外不具有对该条新闻的处理权 限,所以不同用户进入此页面将显示不同的内容。 )”); Response.Write(”<script>alert( 此用户尚未注册!eturrn false; 】 ,,判断用户名与密码是否一致 else !isBothExist) (6)新闻录入和修改:注册用户录入一条新闻所需要的内 容,包含标题、关键词、类型、来源部门、发布日期等.同时从登 { 不 Response.Write(”<script>alert( 用户名和密码不一致,录模块得到用户名,这些信息将被写入数据库中保存。该模块 能进入! )”); 还负责编辑状态下的更新,这时,它将根据取得的Title字段值 erturn flase; 对页面控件初始化。 】 下面以系统登录页面的编写为例给出主要事件和函数. e】se 说明该系统的开发过程。 erturn true; //IsRegUserOk函数:判断用户是否已经注册和密码是否 】 正确 最后给出系统后端数据存储方案: public bool IsRegUserOk0 利用Microsoft SQL Server 2000建立数据库及其存储过 { 程。这里给出两个必需的数据表。一是数据表News包含的字段 string name=TextBoxName.Text.TrimO; 有:编号、姓名、标题、关键词、内容、类型、来源部门和日期。字 string pwd--TextBoxPassword.Text.TrimO; 段说明如下: ,,建立,打开数据库连接 字段名 数据类型 说明 SqlConnection conn=new SqlConnection0; Id 自动编号 新闻编号 conn.ConnecfionString ”server=(1ocat);uid=sa;pwd:: Name 字符 用户姓名 Tit1e 字符 新闻标题 database=jxdb’’; Keyvds 字符 关键词 conn.Open0; Corltent 备注 新闻内容 ,,建立sql字符串 Type 字符 新闻类型 From 字符 来源部门 string sql=”select丰from reg where name-- ”+name+’’ ‘’: Datat ime 日期/时间 发布日期 SqlDataReader dr: SqlCommand cmd=new SqlCommand(sql,conn); 二是数据表Reg包含的字段有:编号、姓名、密码、所属部 dr=cmd.ExecuteReader0; 门、电子邮箱和电话。字段说明如下: ,,保留用户注册与否信息 字段名 数据类型 说明 bool isRegUserExist-dr.Read0; Reg_Id 自动编号 用户编号 ,,关闭DataReader Name 字符 用户姓名 Pwd 字符 用户密码 dr.CloseO; Dep 字符 所属部门 ,,取得用户名的密码 Emai1 字符 电子邮箱 string sqlBoth=”select丰from reg where name=川+name+‘ Te1 数字 电话 sqlBoth+=”and pwd=…+pwd+”…; SqlCommand cmdBoth--new SqlCommand(sqlBoth,conn); 参考文献 SqlDataReader&Both; drBoth=cmdBoth.ExecuteReader0; 1、零距离电脑培训学校丛书编委会.{ASP.NET与网络数据库开 , 保留用户名+密码同时存在信息 发》.机械工业出版社,2004。 bool isBothExist=drBoth.Read0; 2、陈娴刘开文王蓉铃李建.{ASP.NET完全入门》.中国铁道 ,,关闭DataReader 出版社,2004。 &Both.Close0; 3、Scott Worley著.{ASP.NET技术内幕》.王文龙刘湘宁译.人民 conn.Close0; 邮电出版社,2002。 ,,判断用户是否注册 4、Sanjeev Rohilla,Senthil Nathan,Surbhi Malhotra著.{ADO.NET 专业项目实例开发》.陈君王宝良译.中国水利水电出版社,2003。 !isRegUserExist) 5、王浩然严瑞琳赖光辉.ASP.NET行家入门实务.中国铁道出 { 版社.2002。 动态:惠普信息产品及商用渠道集团PSG推出采用最新技术的HP Compa 办公自动化杂志・13・ T5000系列瘦客户机解决方案。全面进军国内金融行业市场。