毕业论文设计标准格式 - 图文

更新时间:2024-04-12 12:39:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

毕业论文(设计)

题 目 基于ASP.NET的新闻系统设计

学生姓名 *** 学 号 *********** 院 系 计算机与软件学院

专 业 计算机科学与技术

指导教师

二OO九 年 五 月 二十 日

声 明

本人郑重声明:

1、 持以“求实、创新”的科学精神从事研究工作。

2、 本论文是我个人在导师指导下进行的研究工作和取得的研究成

果。

3、 本论文中除引文外,所有实验、数据和有关材料均是真实的。 4、 本论文中除引文和致谢的内容外,没有抄袭其他人或其他机构已

经发表或撰写过的研究成果。

5、 其他同志对本研究所做的贡献均已在论文中作了声明并表示了

谢意。

作者签名: 日 期:

目 录

1.引言 ............................................................. 1 2.需求分析 ......................................................... 2 2.1 新闻浏览 ....................................................... 2 2.2 新闻类别管理 ................................................... 2 2.3 新闻管理 ....................................................... 3 2.4 新闻审核 ....................................................... 3 2.5 用户管理 ....................................................... 3 2.6 权限管理 ....................................................... 3 2.7 新闻发布 ....................................................... 4 3.新闻系统设计 ..................................................... 4 3.1 数据库设计 ..................................................... 4 3.2 系统结构设计 ................................................... 6 3.3 界面流程设计 ................................................... 6 4.系统功能实现 ..................................................... 8 4.1 技术介绍 ....................................................... 8 4.1.1 ASP.NET ...................................................... 8 4.1.2 Web Service .................................................. 9 4.1.3 SQL Server 2000 .............................................. 9 4.1.4 系统安全 .................................................... 10 4.1.5 Web Service安全 ............................................ 11 4.2 新闻浏览 ...................................................... 11

I

4.2.1 界面设计 .................................................... 11 4.2.2 主要代码的实现 .............................................. 15 4.3 后台管理 ...................................................... 15 4.3.1 用户登录界面设计 ........................................... 16 4.3.2 添加类别 ................................................... 16 4.3.3 修改类别 ................................................... 17 4.3.4 添加用户 ................................................... 18 4.3.5 修改用户 ................................................... 18 4.3.6 添加角色 ................................................... 18 4.3.7 修改角色 ................................................... 18 4.3.8 用户角色 ................................................... 18 4.3.9 角色权限 ................................................... 19 4.3.10 添加新闻 ................................................... 20 4.3.11 修改新闻 ................................................... 21 4.3.12 审核新闻 ................................................... 22 4.3.13 用户服务 ................................................... 23 5.结束语 .......................................................... 23

II

基于ASP.NET的新闻系统设计

***

南京信息工程大学计算机与软件学院,南京 210044

摘要:随着人们生活节奏的加快,报纸和电视新闻由于自身的局限性,?

关键词:ASP.Net;新闻显示;新闻审核;用户管理(3-5个关键字)

1 引言

伴随着网络的出现,网页逐渐融入人们的生活。快速及时的新闻浏览,五彩缤纷的网上信息,使网络与人们的生活息息相关,于是世界上又出现了第三媒体——Internet。它打破了地域限制,真正使信息得以共享,改变了人们的工作和生活方式。制作网页是企业和个人的宣传自己的重要手段,同时也是用户获取各类信息的重要手段。如今,人们对信息的需求有了更新,更高的要求,而网页由于本身所具有的信息量大,传递快速,没有时空限制等特点恰好满足这种要求。也正是由于网络实现网站的数据信息能够进行实时交互,保证网站数据的实时性。

随着Internet的进一步发展,静态Web站点的开发与维护变得越来越困难,一方面信息的不断增加和变化,使站点维护人员不得不经常修改他们的网页,特别是基于数据库驱动的Web站点更是如此,随着Internet上信息量的增多和交互性的加强使HTML显得越来越难以胜任。而网站信息发布系统大大减轻了网站更新维护的工作量,通过信息后台维护程序在浏览器上只需录入文字、图像就可以快速实现信息维护,从而大大加快了信息的传播速度,时时保持网站的活动力和影响力。

新闻发布系统,是将网站上的需要经常变动的信息,类似公司动态、企业新闻、新产品发布、促销活动和行业动态等变更信息集中管理,并通过信息的某些共性进行分类,最后系统化、标准化发布到网站上的一种网站应用程序。网站信息通过一个操作简单的界面加入数据库,然后通过已有的网页模板格式与审核流程发布到网站上。

1

目前许多企业网站的新闻大多是静态的HTML页面,每次更新信息需要做一个页面,然后FTP上传,再修改页面链接,这样维护非常麻烦,而网站新闻发布系统大大减轻了网站更新维护的工作量,通过新闻后台维护程序在浏览器上只需录入文字和上传图片就可以快速实现新闻维护,从而大大加快了信息的传播速度,随时保持网站的活动力和影响力。

网络发展前景无限,及早与网络结合,与信息时代同步,与高科技汇合,定会给社会各行各业的发展注入新鲜的活力。站在网络时代的前夜,我们清晰地听到了网络时代的宣言:谁掌握了网络,谁就掌握了未来。

2 需求分析

该系统提供了两种权限:普通用户和系统管理员。普通用户可以在前台分类浏览新闻,也可登陆后台修改密码;管理员有3类:新闻管理员负责添加和修改新闻;审核管理员负责审核新闻,只有经过审核的新闻才能在前台提供给用户浏览;系统管理员负责添加新闻类别、新闻类别的修改和删除、新闻栏目管理、用户管理、权限管理等功能,最后,完成系统的发布。

从以上叙述来看,新闻管理系统具体包括以下几个方面的功能:

2.1 新闻浏览

前台新闻显示功能主要显示系统的新闻资源,在首页上列出各类新闻的前5项列表,单击更多可显示关于此新闻类别的所有新闻。具体功能如下:

新闻列表:按标题和发布时间将新闻列出。并且按照新闻的发布日期排序,最新发布的新闻排在前面,即每类新闻显示其最新发布的5条新闻

浏览显示:通过单击新闻标题,出现一新的页面,用户可以浏览相关的新闻内容。

2.2 新闻类别管理

新闻是按类别进行组织的,新闻类别可以动态增加、修改或删除。新闻类别的组织管理可以大大提高系统的灵活性和扩展性。新闻类别管理的具体功能如下:

添加新闻类别:在文本框里输入要添加的新闻类别后,按提交则添加到数据库中,按清空则可重新添加一新类别。

修改新闻类别:将数据库中所有新闻类别以列表的形式列出,修改新闻类别只涉及到新闻类别名称的变更,不影响其他数据。

2

删除新闻类别:在删除新闻类别之前,需先考虑删除该类别的新闻。

2.3 新闻管理

新闻管理功能实现新闻内容的更新与维护,在后台,为管理员提供输入、修改、删除各类新闻的功能。 添加新闻:添加新闻功能包括添加新闻标题、新闻类别的选择、关键词、发布时间、新闻内容,用户可以在新闻内容中插入图片。

修改新闻:将所有新闻以列表的形式列出,当单击某条新闻的“预览”字段后,转入相应的修改页面,可以修改新闻标题、类别、关键词、发布时间、新闻内容.修改完后,按提交则将修改后的数据保存到数据库中。

删除新闻:删除新闻的同时,该新闻包括的其他内容一并从数据库中删除。

2.4 新闻审核

完成新闻的录入后,在审核新闻页面中,将所有新闻以列表的形式列出,单击审核操作按钮后,新闻审核状态发生改变。只有经过审核的新闻,才能显示在前台,供用户浏览。

2.5 用户管理

用户管理包括管理员和普通用户,管理员有新闻管理员、系统管理员和审核管理员。 新闻管理员负责添加、修改、删除新闻;

系统管理员负责添加、修改类别,添加、修改用户,添加、修改角色,用户角色、角色权限管理; 审核管理员负责对新闻的审核,并将结果保存到数据库中;只有经过审核的新闻才能显示在前台,供用户浏览。

普通用户登录后,进入后台可以修改个人密码。

2.6 权限管理

系统的每个用户均属于一个角色,角色不同,新闻的管理权限不同。此模块的功能包括系统角色维护、用户角色的分配和角色权限的设置。

角色维护:角色维护功能主要包括添加角色、修改角色和删除角色。删除角色时需首先考虑删除该角色的用户。

用户角色分配:为每个用户分配角色,并设置是否是新闻管理员、系统管理员、审核管理员,如不设

3

置,则默认为普通用户。

角色权限设置:设置每一个角色允许管理的新闻类别。可以添加或修改新闻权限

2.7 新闻发布

将做好的新闻发布系统通过安装IIS和建立虚拟目录将新闻发布出去,供用户浏览。

3 新闻系统设计

在软件项目开发的需求分析阶段,我们已经搞清楚了软件要做什么的问题,对于一个实际的开发项目,需要把这些需求通过需求说明书文档描述出来,此即是目标系统的逻辑模型。接下来的工作是要把软件做什么的逻辑模型转换为怎么做的物理模型,即着手去实现软件的需求,并将设计的结果反映在设计说明书文档中,此阶段即为设计阶段。新闻系统设计主要包括数据库设计、系统结构设计、界面流程设计。

3.1 数据库设计

系统数据库是动态新闻发布系统的重要部分,本系统使用SQL Server2000 作为应用程序的数据库。系统至少需要实现新闻、用户、角色等数据,因此本系统数据库至少应包含新闻类别表(News_Category)、新闻信息表(News_News)、角色表(Roles)、角色类别关系表(RoleCategory)、用户表(Users).

(1)News_Category表(新闻类别表)

新闻类别表中包含新闻类别的编号、名称信息,其中,将CategoryId字段设置为自动增长,自动增长量为1,并设置为主键。该表的描述如表1所示:

表1 News_Category表的字段说明

编号 1 2 字段名称 CategoryId CategoryName 字段类型 int nvarchar 字段说明 自动增长,主键 类别名称

(2)News_News表(新闻信息表)

在设计新闻信息表时,需要将与新闻相关的其他因素也考虑在内,如新闻的发布时间,审核标志,关键字等,当添加一条新闻后,将NewsId字段设置为自动增长,自动增长量为1,并设置为主键。将新闻的

4

审核标记设置为0,这就需设置flag字段的默认值为0。该表的描述如表2 所示:

表2 News_News表的字段说明

编号 1 2 3 4 5 6 7 8 字段名称 NewsId CategoryId CategoryName NewsDate Title Content Keywords flag 字段类型 int int nvarchar datetime nvarchar nvarchar nvarchar bit 字段说明 自动增长,主键 新闻类别标识 新闻类别名称 发布时间 新闻标题 新闻内容 关键字 审核标志,默认为0

(3)Roles表(角色表)

角色表中主要存储系统角色的编号、名称信息,其中,将RoleId字段设置为自动增长,自动增长量为1,并设置为主键。该表的描述如表3所示:

表3 Roles表的字段说明

编号 1 2 字段名称 RoleID RoleName 字段类型 int nvarchar 字段说明 自动增长,主键 角色名称

(4)RoleCategory表(角色类别关系表)

角色种类关系表主要存储角色种类和新闻种类的关系信息,使用了Roles表的RoleName和News_Category表的CategoryName作为该表的属性列。该表的描述如表4所示:

表4 RoleCategory表的字段说明

编号 1 2 字段名称 RoleName CategoryName 字段类型 nvarchar nvarchar 字段说明 角色名称 新闻类别名称

(5)Users表(用户表)

用户表主要存储用户信息,包括用户编号、用户帐号、用户密码、用户Email地址,用户所属角色,用户身份,即是属于管理员中的哪一类,或是普通用户。如不设置,则默认为普通用户。该表的描述如表5所示:

5

表5 Users表的字段说明

编号 1 2 3 4 5 6 字段名称 UserID UserName Password Email RoleName IsAdministrator 字段类型 int nvarchar nvarchar nvarchar nvarchar nchar 字段说明 自动增长,用户表识 用户帐号 用户密码 用户Email地址 用户所属角色 用户身份

3.2 系统结构设计

由于本系统的业务逻辑并不复杂,可以将业务逻辑代码直接放到窗体的后台代码文件中。在访问数据库时,设计一个通用数据访问类,其包含访问数据库的方法,这样,可避免重复编写数据访问的代码。Web窗体通过调用通用数据访问类中的方法来实现对数据库的访问。

通用数据访问类(DBAccess.cs)的方法描述见表6。

表6 通用数据访问类方法描述

接口 GetDataSet(string sql) ExeSql(string sql) 参数 sql sql 返回值 DataSet 无 描述 得到数据集 表的记录操作

3.3 界面流程设计

本系统用到的窗体和用户控件见表7和表8所示。

表7 窗体和用户控件

文件名 NewsDefault.aspx NewsShow.aspx AddClass.aspx GaiClass.aspx AddNews.aspx 说明 新闻浏览主界面 显示新闻界面 添加新闻类别界面 修改新闻类别界面 添加新闻界面

6

续表7

文件名 GaiNews.aspx GaiNews2.aspx AddRole.aspx Role.aspx AddUser.aspx GaiUser.aspx CheckNews.aspx RoleComp.aspx UserLogin.aspx UserRole.aspx UserService.aspx Foot.ascx Header.ascx MasterPage.master Back.master 说明 修改新闻列表形式显示界面 修改新闻具体显示界面 添加角色界面 修改角色界面 添加用户界面 修改用户界面 审核新闻界面 角色权限管理界面 用户登录界面 用户角色管理界面 用户服务界面 页面底部显示的用户控件 页面顶部显示的用户控件 新闻浏览页面的模版 后台管理模版

表8 各类新闻窗体

文件名 Sports.aspx Native.aspx Internation.aspx Financial.aspx Technology.aspx Entertainment.aspx Health.aspx Society.aspx Education.aspx Military.aspx Premises.aspx Car.aspx 说明 体育新闻界面 国内新闻界面 国际新闻界面 财经新闻界面 科技新闻界面 娱乐新闻界面 健康新闻界面 社会新闻界面 教育新闻界面 军事新闻界面 房产新闻界面 汽车新闻界面

用户进入新闻系统后,首先显示的是主页面NewsDefault.aspx,在该页面可以实现不同类别新闻的浏览,首页上显示了某类新闻已经经过审核的前五条新闻,列出了其新闻标题和发布日期,并按发布日期降

7

序排列,实现最新发布的新闻显示在最上面,在每类新闻的右下脚,设置了一个超链接,名为“更多”。 单击后,显示此类新闻的所有新闻标题和发布日期,当然,单击最上面的新闻类别名称后,也可实现相同功能。当点击某一新闻标题后,就进入显示页面NewsShow.aspx,具体显示此条新闻的标题、内容、发布日期;因此当在主页的左下角单击“进入后台管理”链接可进入登录页面UserLogin.aspx,经审核并判断角色后进入相应的功能页面,在页面里可完成相应的管理功能。

4 系统功能实现

4.1 技术介绍

4.1.1 ASP.NET

.NET是Microsoft公司在快速发展的软件技术世界中维持领先的保证,ASP.NET则是开发.NET应用程序的语言之一。ASP.NET是对传统ASP技术的重大升级和更新,它是建立在.NET框架的公共语言运行库上的编程框架,可用于在服务器上生成功能强大的Web应用程序. ASP.NET提供了一种编程模型和结构.对比原来的Web技术,它能更快速、更容易地建立灵活、安全和稳定的应用程序。ASP技术的出现使服务器端程序开发变得简单易行,ASP.NET则进一步拉近了桌面应用开发和Web开发的距离.尽管ASP.NET的语法基本上与ASP兼容,但其还提供了一个新的编程模型和基础结构,从而提高了应用程序的安全性、缩放性和稳定性。ASP.NET是一个编译的、基于.NET的环境,可用任何与.NET兼容的语言创作应用程序。本系统采用C#开发。C#是一种新型的、简练的、面向对象的编程语言,它是从C/C++发展而来的。C#主要用于编写基于Microsoft.NET 平台的应用程序,非常适用于编写Web程序。

C#特点有:

(1)支持快速开发:借助于Visual Stdio开发工具,可以通过拖放的形式添加组件,并自动生成组件需要的代码,同时在Visual Stdio2005中,自动生成的代码与手动控制的代码相隔离,让开发人员更容易检查自己的设计。

(2)支持面向对象:面向对象是开发程序的一种机制,是专指在程序设计中采用封装、继承、抽象等设计方法,其重点是类的设计。而C#中什么都是面向对象,连一个字符串都是面向对象的设计。

(3)对XML强大的支持:XML语言已经成为一种标准的数据描述语言,支持XML开发也成了衡量一种语言是否强大的标准。C#对XML语言的支持,体现在强有力的XML框架类中,尤其是命名空间“System.Xml” 中,提供了一系列对XML读取的操作类,使XML程序的开发变得非常容易。

(4)面向组件的开发:面向组件是继面向对象后的又一流行趋势,属于设计方法的一种。在C#中最具特色的组件就是ADO.NET数据访问组件。组件设计也是C#考虑最多的一种形式,组件可以在开发中直接使用,也可以调用对象提供的方法来操作。

8

4.1.2 Web Service

Web Service主要是为了使原来各孤立的站点之间的信息能够相互通信、共享而提出的一种接口。从更深的层次上来看,Web Service是一种新的网络应用程序分支。是自描述、自包含、模块化的应用。Web Service就是基于网络的分布式模块化组件,它遵循一系列技术规范,使得Web Service能和兼容组件进行互操作。它可以通过一系列相关技术在网络中被描述、发布、查找和调用。 Web Service所使用的是Internet上统一、开放的标准,如HTTP、XML、SOAP(简单对象访问协议)、WSDL等,所以Web Service可以在任何支持这些标准的环境中使用。

4.1.3 SQL Server 2000

SQL Server 2000所示一个巨大而复杂的数据库管理系统。SQL Server 2000是完全支持Web的数据库产品,提供了对可扩展标记语言(XML)的核心支持,以及在Internet上和防火墙外进行查询的能力。并使得数据的管理与分析更加灵活,便于用户更加容易适应快速发展的新环境。SQL Server 2000数据库提供了一套管理工具和实用程序,可以用于设置、管理、查询SQL Server2000中的数据,并进行数据库管理和备份,管理其安全性和一致性。

企业管理器是SQL Server 2000中最重要的一个管理工具,用户和系统管理员可以使用他在本地或远程管理网络、计算机、服务和其他系统组件。可以在企业管理器中按如下步骤来创建数据库。

(1) 选择“开始”->“Microsoft SQL Server”->“企业管理器”任务项,即可打开“SQL Server Enterprise Manager”窗口

(2)在“控制台根目录”选项中,依次展开“Microsoft SQL Server”->“SQL Server组”->“Local(Windows NT)”分支项之后,右击“数据库”文件夹,在弹出的快捷菜单中选择“新建数据库”命令项。

(3)此时即可打开“数据库属性”对话框,在“名称”文本框中输入新建数据库的名称“NEWS”,在“排序规则名称”下拉列表中可以选择要使用的排列规则,一般情况下都使用“服务器默认设置”选项。

(4)设置好选项之后,单击“确定”按钮,即可完成NEWS数据库的创建。

在使用数据库的过程中,接触最多的就是数据库中的表。表是存储数据的地方,是数据库中最重要的部分,管理好表也就是管理好了数据库。表实质就是行列的集合,每一行代表一条记录,每一列代表记录的一个字段。本系统中创建的表有:新闻类别表(News_Category)、新闻信息表(News_News)、角色表(Roles)、角色类别关系表(RoleCategory)、用户表(Users)。

9

4.1.4 系统安全

在网络环境下,由于种种原因,网络被入侵和攻击是难免的,可谓是防不胜防,但是,通过加强管理和采用必要的技术手段可以减少入侵和攻击行为,避免可能因入侵和攻击而造成的各种损失。网络管理人员应认真分析各种可能的入侵和攻击形式,制定符合实际需要的网络安全策略,防止可能从网络和系统内部或外部发起的攻击行为,重点防止那些来自具有敌意的国家、企事业单位、个人和内部恶意人员的攻击。防止入侵和攻击的主要技术措施包括访问控制技术、防火墙技术、入侵检测技术、安全扫描、安全审计和安全管理。这些安全技术相互支持与协作,各自解决安全问题的某一方面。其中,访问控制技术和入侵检测是信息系统中不可或缺的安全措施。

(1)基于角色的访问控制

访问控制是网络安全保护和防范的核心策略之一,其目的是为了保证系统的内部和外部用户,对系统资源的访问、使用,以及对系统中敏感信息的访问、存取,都受安全策略的控制。随着计算机技术和应用的发展,特别是网络应用的发展,这一技术迅速应用于计算机信息系统的各个领域。访问控制技术可以有效地拒绝未经授权的非法用户于系统之外,也可以保证网络资源不被非法的访问和使用。基于角色的访问控制被认为是一种更普遍适用的访问控制模型。它基于用户在系统中的角色来规定其访问权限,它是根据安全策略划分出不同的角色,资源访问许可被封装在角色中,同时为用户指派不同的角色,用户通过角色间接地访问资源。基于角色的访问控制相比于其他的访问控制技术,其优势在于它对管理能力的支持。一个基于角色的访问控制系统建立起来后,主要的管理工作即为分配或取消用户的角色。用户的责职发生变化时,赋予不同的角色,也就改变了用户的权限。当组织的功能变化或演进时,只需删除角色的旧功能,增加新功能,或定义新角色,而不必更新每一个用户的权限设置。它可以减少授权管理的复杂性、降低管理开销,并为管理员提供一个比较好的实现安全策略的环境。

(2)入侵检测技术

入侵检测技术是网络安全技术和信息技术结合的产物。使用入侵检测技术可以适时监视网络系统的某些区域,当这些区域受到攻击时,能够及时检测和立即响应。入侵检测的内容涵盖了授权的和非授权的各种入侵行为,例如,违法安全策略行为、冒充其他用户、泄露系统资源、恶意行为、非法访问,以及授权者滥用权力等。用于入侵检测的所有软硬件系统称为入侵检测系统,这个系统可以通过网络和计算机动态地搜集大量关键信息资料,并能及时分析和判断整个系统环境的目前状态,一旦发现有违反安全策略的行为或系统存在被攻击的痕迹等,立即启动有关安全机制进行应对。入侵检测系统可用于动态检测,也可用于静态检测。静态检测的主要目的是事后恢复、进一步分析等。入侵检测的一般过程包括采集信息、信息分析和入侵检测响应三个环节。新一代的入侵检测系统部署方便、应用灵活、功能强大、并提供攻击签名、检测、报告和事件关联等配套服务功能的智能化系统。入侵检测是一门综合性技术,既包括适时检测技术,也有事后分析技术。尽管用户希望通过部署入侵检测技术来增强网络安全,但不同的用户需求不同。由于

10

攻击的不确定性,单一的入侵检测技术产品可能无法做到面面俱到。因此,入侵检测系统的未来发展必然是多元化的,只有通过不断改进和完善才能更好地协助网络进行安全防御。

4.1.5 Web Service安全

到目前为止安全性是开发和部署Web service的最基本的内容之一。.NET 环境下的 Web Service 由 IIS 来提供,在该环境下,可以利用 IIS 的内置安全特性。

(1)支持 HTTP 的 SSL 能够为 HTTP 中传输的数据提供保密性和完整性。通过启用客户端 X.509 证书(在 SSL 协议中是否使用客户端证书是可选的)可以提供预防抵赖服务。一旦启用 SSL,通过这些连接发送的所有数据都将加密并使用签名。

(2)IIS 提供多种身份验证机制:基本身份验证、摘要式身份验证、集成 Windows 身份验证 (NTLM/Kerberos)或 X.509 证书。对于提供 Web服务的特定目录,可以启用其中任何一种身份验证机制,相应地客户也可以提交相应证书,并通过 IIS 验证。此外,需要修改 Web Service 中的 web.config 文件以指明需要使用“Windows”身份验证。同时,IIS 中需禁用匿名访问。

(3)可使用 .NET 提供的“代码访问安全”机制提供身份验证。本质上,在采用 Web Service 方式时,这种机制能够提供调用 Web Service 的用户的身份。在已经对用户身份(由客户根据 IIS 配置验证机制来提供)进行检索以后,您可以显式地检查是否已授权用户访问该 Web 方法。

4.2 新闻浏览

4.2.1 界面设计

创建用户控件Header.ascx: 打开Visual Stdio2005,单击文件->新建->网站,弹出一个对话框,单击ASP.NET网站,输入位置为d:\\新闻发布系统,单击确定,右击“解决方案资源管理器”中的D: \\新闻发布系统\\,单击添加新项,弹出一个如图4.1所示的对话框,选中Web用户控件,名称改为Header.ascx,再单击添加。在Header.ascx界面中单击设计,出现一空白页,单击布局->插入表,插入一个2行1列的表格,在第一列输入标题“基于Web Service新闻发布系统”,并设置其字号,字体和位置。选中第2行,用同样的方法插入1行25列的表格,并依次输入以新闻首页开始的各类新闻类别,每两个新闻类别之间用|隔开。

11

图4.1 创建用户控件

创建用户控件Foot.ascx:按照上述方法,创建Foot.ascx控件,在出现的空白页里,插入两行一列的表格,在第一行输入“@基于webservice新闻发布系统设计 版权所有:***”;在第二行输入“Email:liudan_0112@126.com”;并设置其字体和位置。

新闻显示的页面用统一的母版MasterPage.master,包括页眉、页脚和正文部份,中间是ContentPlaceHolder控件,页眉、页脚都是用户自定义控件,分别是Header.ascx和Foot.ascx.创建母版页MasterPage.master,方法类似创建用户控件,当出现如图4.1所示的界面后,选中母版页,名字为默认的MasterPage.master,转换到MasterPage.master中的设计,在出现的空白页里,插入一3行1列的表格,将Header.ascx放在第一行,Foot.ascx放在第3行。MasterPage.master设计完成。

NewsDefault.aspx是新闻系统的主界面,使用DataList的超链接显示新闻标题作为浏览新闻的菜单。创建NewsDefault.aspx,用类似创建用户控件的方法,当出现如图4.1所示界面后,单击Web窗体,输入名称NewsDefault.aspx,选中“选择母版页”,在弹出的对话框里选中MasterPage.master,单击确定。在ContentPlaceHolder内,插入一个7行2列的表格,最后一行占两列,输入文字“进入后台管理”;其链接地址为登录界面“UserLogin.aspx”;其余的6行2列功能相似,分别对应12个新闻类别。第1行第1列插入3行1列的表格,第一行输入“体育”;第3行输入“更多”,其链接地址为存放体育新闻的界面“Sports.aspx”;中间使用DataList控件,从工具箱拖入DataList控件后,在选择数据源的下拉列表中,选择“新建数据源”,在弹出的对话框中,单击数据库,数据源的ID默认为SqlDataSource1,单击确定,在弹出的新对话框中,单击新建链接出现如图4.2所示的界面。

12

图4.2添加连接

填好相应内容后,单击下一步,出现如图4.3 所示界面,选择News_News,并选中NewsId,Title,NewsDate,并在“where”里设置其限制条件,包括新闻类别,审核标记;最后单击“ORDER BY”,在弹出的对话框里,选择按DateTime降序排列。DataList里面是一个1行3列的表格,第1列是“·”;第2列是新闻标题的超链接,单击其可转到新闻内容具体显示页面,第3列显示新闻发布日期。在首页里显示前5条记录。可用类似上述方法配置表格中其他各行各列新闻类别的DataList。

图4.3 配置数据源

新闻浏览首页如图4.4。

13

图4.4 新闻浏览首页

当单击更多或新闻标题上的某新闻类别名称时,会显示此类别的所有新闻。如:单击标题上体育,会转到Sports.aspx窗体,Sports.aspx引用了MasterPage.master母版,并插入一个DataList控件,其数据源和News_News表有关,显示其所有被审核过的新闻标题和发布日期。如图4.5所示。

图4.5 显示某类别的所有新闻

当单击某条新闻的标题时,转到显示新闻内容的页面NewsShow.aspx,不同的新闻传递不同的NewsId,NewsShow.aspx的界面设计如下:

新建一带有母版MasterPage.master的窗体NewsShow.aspx,并插入一FormView控件,配置数据源,选择News_News表中的NewsId,Title,Content,NewsDate字段,并且插入一个3行1列表格到FormView中,每一行加入一个label控件,其text值分别对应某条记录中Title,NewsDate,Content字段的值,在源代码里表示成Text=’<%#Eval(\’;运行时,当单击某一新闻标题时,运行结果如图4.6所示。

14

图4.6 新闻内容显示界面

4.2.2 主要代码的实现

当单击某条新闻的新闻标题时,为了显示相应新闻的信息,需要传递此条新闻的NewsId.下面为DataList1的OnItemDateBound代码,其余DataList的代码类似:

protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e) {

(e.Item.FindControl(\

(e.Item.FindControl(\

}

4.3 后台管理

系统中用到了基于角色的访问控制,它涉及到用户、角色、权限等概念:

用户:是指一个可以独立访问计算机系统中的数据或数据表示的其他资源的主体。可以是人,进程等,一般指人;

角色:指一个组织中的某一特定的职能岗位,带有特定的任务范畴。例如经理、教师等;

权限:是对特定对象的操作模式的许可。表示对系统中的客体进行特定模式的访问操作,与实现的机制密切相关。权限的本质取决于系统的实现细节。

用户—角色分配:为用户分配一定的角色,即建立用户与角色的多对多关系。

角色—权限分配:为角色分配一组访问权限,即建立角色与访问权限的多对多关系。这样通过角色将用户与访问权限联系起来。用户具有其所拥有各角色的访问权限的总和。

15

4.3.1 用户登录界面设计

当单击新闻首页上的“进入后台管理”,进入用户登录界面UserLogin.aspx,其界面设计如下: 先打开如图4.1的界面,新建一带有母版MasterPage.master的窗体UserLogin.aspx,先插入2行1列的表格,在第1行插入4行2列的表格,

第2行加入两个按钮,如图4.7所示:

图4.7 用户登录界面

当不同用户输入正确的用户名称、用户密码,并选择权限后,单击“用户登陆”,不同用户可进入相应的功能界面。并可执行其相应的所有操作,当系统管理员登陆后,可实现的功能有:添加类别、修改类别、添加和修改用户、添加和修改角色、用户角色和角色权限管理,也可返回新闻首页。

4.3.2 添加类别

新闻类别是管理新闻信息的先决条件。因而在新闻发布系统的设计过程中首先应该实现添加新闻类别功能,该功能由添加新闻类别界面实现。先设计母版back.Master,设计过程为:用前面的方法出现如图5.1所示的界面后,选中母版页,将名称改为back.master;单击确定,转换到back.master中的设计,在出现的空白页里,插入2行1列的表格,在第一行输入“新闻发布系统后台管理界面”,在第二行插入1行2列的表格,在第一列继续插入2列多行的表格,在第一列输入“·”;第2列依次输入新闻首页、添加新闻、修改新闻、审核新闻、用户服务、添加类别、修改类别、添加用户、修改用户、添加角色、修改角色、用户角色、角色权限。当不同权限的用户进入系统后,会显示其中的一个或多个超链接,设计好母版back.Master后,添加一带有母版back.Master的窗体AddClass.aspx,AddClass.aspx中包括的超链接有:新闻首页、添加类别、修改类别、添加用户、修改用户、添加角色、修改角色、用户角色、角色权限。在

16

AddClass.aspx窗体里ContentPlaceHolder里插入表格,该界面的运行效果如图4.8所示。

图4.8 添加新闻类别

输入类别名称后,单击提交按钮,首先判断文本框里是不是已经输入内容,如果已经输入类别,则将数据添加到新闻类别表中。单击清空,文本框里内容为空。可继续添加其他的新闻类别。

4.3.3 修改类别

在修改类别界面GaiClass.aspx中,使用GridView列出新闻类别表中的编号和类别名称,并使用GridView内建的编辑和删除功能进行新闻类别的维护,选中GridView,按右上角的小三角,在弹出的框中,选择配置数据源,配置数据源的方法类似前面,在出现图4.3的界面后,单击高级,选择第一项,自动实现编辑、删除功能,再次选中GridView,选择启用编辑、启用删除、启用分页,设置GridView的属性,PageSize=8,PagerSettings里的mode设置为NextPreviousFirstLast,并修改相关的Text值。按照顺序排列并显示所有的新闻类别。其界面如图4.9所示:

图4.9 修改新闻类别

17

4.3.4 添加用户

在添加用户这部分功能中,可以添加用户名和用户密码,默认为普通用户,没有为其分配角色,在用户角色界面中,可以动态为其分配角色。添加用户界面AddUser.aspx的设计类似于图4.7,不同点在于需要同时添加用户名称和密码,如果有一个为空,则会出现相应的提示信息。按确定按钮保存到Users表中。

4.3.5 修改用户

修改用户界面GaiUser.aspx的设计类似图4.8,在修改用户功能中,系统管理员可以删除指定的用户,但不可以修改用户密码,因此和图4.8的不同之处在于只启用删除和分页功能,不启用编辑功能。

4.3.6 添加角色

添加角色界面AddRole.aspx的设计和图4.7类似,填写好角色名称后,单击提交按钮,将数据保存到Roles表中。

4.3.7 修改角色

修改角色界面Role.aspx的设计类似图4.8,具体操作类似于修改新闻类别。可实现现修改角色名称,也可删除一条记录。

4.3.8 用户角色

在添加了用户后,需要为每一个用户分配一个角色,以便实现用户操作的权限。本系统中管理用户分为新闻管理员、审核管理员、系统管理员。对应于Users表中IsAdministrator中的字段分别为1、2、3,此字段的默认值为4,即普通用户。在用户角色界面中,有两个DropDownList控件,一个RadioButtonList控件,一个GridView控件和一个Button控件。其中的一个DropDownList1绑定Users中的UserName字段,DropDownList2

绑定

Roles

中的

RoleName

字段。GridView1

绑定

Users

中的

UserID,UserName,Password,RoleName,IsAdministrator字段.单击确定按钮,如果没有选择用户名或者角色名,则会出现相应的提示,当选择用户名,角色名后,则将数据保存到Users表中,并显示在下面的GridView1中。其界面如图4.10。

18

图4.10 用户角色管理

4.3.9 角色权限

角色权限可以设置任意角色的管理权限,为了实现一个友好的界面,当我们选择一个角色时,首先将原有权限列出,并使用两个列表框,左边显示可选择的权限,右边显示赋予的权限,两个列表框中的项目通过中间的按钮可以方便的进行移动,以实现权限设置。当页面第一次加载后,左边列表框中显示的是所有权限,当选择了一个角色名后,页面上显示其原有权限,且将这些权限从左边列表框中去掉,左边列表框中显示的是用户可选择的尚不具备的权限,修改按钮用于保存新添加的功能,但是要替换掉原有权限,而添加按钮则可以在数据库中插入新添加的功能,原有功能仍存在。

在角色权限界面(RoleComp.aspx)中,有如下控件:一个DropDownList,绑定Roles表中RoleName字段,两个Label,分别显示原有权限和新的权限,两个ListBox,分别存放某角色开始可以选择的权限,及后来新增的权限;6个按钮;其中四个用来实现两个ListBox之间的权限转移,可以实现权限全部转移,也可一项项的转移。根据上面的图标可知移动方向。另有两按钮,分别用于实现修改和添加功能,单击修改或添加按钮,将记录写进数据库。选择某角色后的运行界面如图4.11。

图4.11 选择角色后的运行界面

19

当单击添加按钮后,运行结果如图4.12所示。

图4.12 执行了添加操作后的界面

当单击修改按钮后,运行结果如图4.13所示。

图4.13 执行了修改操作后的界面

当新闻管理员输入正确的用户名称、用户密码后,进入AddNews.aspx窗体。并可执行新闻管理员能执行的所有操作,包括添加新闻和修改新闻,也可返回新闻首页。

4.3.10 添加新闻

在添加新闻的界面AddNews.aspx中,使用了FreeTextBox控件,FreeTextBox 是一个基于 Internet Explorer 中 MSHTML 技术的 ASP.NET 开源服务器控件。这是一款优秀的自由软件(Free Software),我

20

们可以轻松地将其嵌入到 Web Forms 中实现 HTML 内容的在线编辑,该控件不仅具有较完备的文字编辑功能,而且还可以实现图片的上传,可以满足较复杂新闻界面的编辑。FreeTextBox控件使用如下: 下载FreeTextBox v3.1.6软件,首先把Framework-2.0文件夹里的FreeTextBox.dll文件复制到项目中的bin目录里。然后在项目里单击右键添加新的引用,在添加引用对话框选择项目标签,浏览->找到FreeTextBox.dll所在的文件夹->确定。应用就添加完成了。

添加新闻界面中,添加了新闻标题、类别、关键词、发布时间和新闻内容,其中发布时间取当前系统时间,同时提供了上传图片功能,可以添加图片到服务器,首先在根目录下新建文件夹image,上传的图片放在此文件夹里,并且在添加新闻内容时,如需用到图片,则从此文件夹里调用。添加内容时,可以修改文字的格式。为了实现该功能,应该将AddNews.aspx源代码的Page 中的validateRequest置“false” ,添加新闻界面如图4.14所示。

图4.14 添加新闻界面

当点击保存按钮时,首先判断上面的新闻标题、类别、关键词、发布时间、新闻内容是否填好,如果没有全部填好,则提示需添加相关内容。都添加好后,写入数据库。按清空按钮,则上面所有填的内容都将为空。可重新添加。

4.3.11 修改新闻

在修改新闻主界面GaiNews.aspx中,使用GridView列出新闻编号、所属类别名称、新闻标题、发布日期,同时在GridView中添加编辑和删除按钮来实现新闻的删除功能,使用超链接链接到修改新闻页面GaiNews2.aspx。GaiNews2.aspx界面设计与添加新闻的界面设计是相同的。当单击删除按钮时,可以删除此条被选中的记录,单击编辑按钮,可以编辑类别名称、标题、发布日期,当单击超链接预览时,转到GaiNews2.aspx界面。其类似于添加新闻界面,此时,在GaiNews2.aspx界面上,新闻标题、类别等都填写

21

的是选中的那条新闻对应的各属性值。为了实现此功能,需要将此新闻的NewsId值传到GaiNews2.aspx。修改完新闻后,按保存按钮,即可完成修改功能。修改新闻主界面如图4.15所示。

图4.15 修改新闻

审核管理员输入正确的用户名称、用户密码后,进入CheckNews.aspx窗体。并可执行审核管理员能执行的操作,审核新闻,同样也可返回新闻首页浏览新闻。 4.3.12 审核新闻

一般情况下,在完成了新闻的录入后,新闻信息处于默认的未审核状态,此时就需要对新闻进行审核操作,如果新闻未能通过审核,那么此条新闻就不能够显示在前台页面中。在审核新闻页面中,单击审核操作按钮后,新闻的审核状态就会发生改变。同时,按钮上的显示值会发生改变。并将结果写入数据库中。如果新闻一开始已经被审核,则按钮上显示的值为“取消审核”;相反,则按钮上显示的值为“开始审核”。审核新闻界面CheckNews.aspx如图4.16所示:

图4.16 审核新闻

22

4.3.13 用户服务

普通用户在登陆界面输入用户名和密码后,经过验证可进入修改密码界面,界面上显示的是此用户的用户名和密码。界面如图4.17所示:

图4.17 用户服务

商品类别 数量 日用百货 10 图4.18 绘制图例

电器 20 5 结束语

至此,一个功能比较完整的新闻发布系统已经完成。通过这次毕业论文的设计,我熟悉并了解了利用

23

ASP.NET开发网站的步骤和方法,也能更加熟练的使用SQL Server2000数据库。这是我第一次接触ASP.NET,有些功能完成的不是很好,也存在不足之处,有些功能选择用比较简单的方法实现,如:在添加新闻时,对于图片的处理,没有把图片转换格式后存到数据库中,而是先将图片上传到服务器上,再从服务器上获取。以后,会注重平时知识的积累,拓宽自己的知识面,这样才能在以后参与的项目中,尽量减少存在的不足。

参考文献

[1] Blake Dournaee著,周永彬 贺也平 刘娟译,《XML安全基础》清华大学出版社,2003. 100. [2] System.Security.Cryptography.Xml 命名空间.

http://msdn.microsoft.com/zh-cn/vstudio/system.security.cryptography.xml.aspx. 2009年4月23日访问

[3] 万科 覃剑.《Visual C#.NET程序设计基础与上机指导》.清华大学出版社.2007. 32. [4] (美)Peter Thorsteinson,G.Gnana Arun Ganesh. 梁志敏 蔡建 译.《.NET安全性与密码术》.清华大学出版社. 2004. 85.

[5] 陈锦辉.《精通从HTML到XML实务经典》.中国青年出版社.2004. 48.

[6] Chen,B;Linz,DD;Cheng,HH,XML-based agent communication, migration and computation in mobile agent systems,The Journal of Systems and Software ,2008 vol.81 no.8 , 1364-1376

[7] Ye Fei,Zhu Xiaodong,An XML-Based Software Non-Functional Requirements Modeling Method, International Conference on Electronic Measurement & Instruments; 20070816-18; Xi'an(CN) 1-6

?? 致谢

本设计在***老师的悉心指导和严格要求下业已完成,从课题选择、方案论证到具体设计和调试,无不凝聚着***老师的心血和汗水,***老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都让我受益匪浅。她无论在理论上还是在实践中,都给予我很大的帮助,使我得到不少的提高,这对于我以后的学习有一种巨大的帮助,感谢她耐心的辅导。在四年的本科学习和生活期间,各位任课老师的认真负责,使我能够很好的掌握和运用专业知识,并在设计中得以体现。正是有了他们的悉心帮助和支持,才使我的毕业论文工作顺利完成,在此向南京信息工程大学计算机与软件学院的全体老师表示由衷的谢意,感谢他们四年来的辛勤栽培。

24

The News System Design Based on ASP.NET

Liu Dan

School of Computer and Software, Nanjing University of Information Science and Technology,Nanjing 210044

ABSTRACT

As the pace of life speeds up, the newspapers and television can not meet the demand of the mass press as soon as possible . With the rapid development of Internet, more and more information published in the Web, news information as a major theme is no exception. The emergence of the Internet media gives people timely and mass information. Therefore, more and more people choose to get information through the Internet. News sites have became the indispensable media platforms in people's daily life. This topic bases on . NET Framework, a database platform SQL Server2000, Microsoft Internet Information Server 5.0 as a Web server, It completed a news release system which based on a browser / server (Browser / Server) model of network, completed a user's browser, edit Password and the various operations of different Managers' , such as: Show of the News section of the menu, a section of the press, adding news categories, the edit and delete of categories , add news, edit and delete news, the management of news columns , users and competence . Authorized users can release and manage the news with the client program of human-computer interactive through the web browesr. The system’s designment follows the software engineering idea strictly, it completed the following functions : a feasibility analysis, demand analysis, database design, system design, systems implementation. Key word: ASP.Net; show news; audit news; user management

25

本文来源:https://www.bwwdw.com/article/ijzp.html

Top