ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:86.78KB ,
资源ID:8741779      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8741779.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ASPNET的博客系统的方案设计书与实现1.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

ASPNET的博客系统的方案设计书与实现1.docx

1、ASPNET的博客系统的方案设计书与实现1封 面作者:Pan Hongliang仅供个人学习基于ASP.NET的博客系统的设计与实现作者:吴一挺 院系单位:管理学院 专业年级:2006届信息管理与信息系统指导老师:傅丁祥 讲师安徽 合肥 230039摘 要 基于Microsoft.Net环境的ASP.NET技术,为开发功能强大的动态网站提供了一种简单、高效的途径。该博客系统以ASP.NET为开发技术,使用C为开发语言,实现了博客网站的动态管理,使得对博客信息的管理更加及时、高效,提高了工作效率。同时对系统的背景需求、系统的功能特点和设计方案进行了介绍。该文还以随笔管理为例,对ASP.NET环境

2、下的MVC开发模式进行了简单的介绍。.关键字 ASP.NET;ADO.NET;博客;系统;数据库Design and Implementation of Blog System Based on ASP.NETAuthor:Wu Yiting Unit: the Management College of Anhui University Specialty:Grade 2006 Information Management and Information SystemTutor:Instructor Fu DingxiangHefei Anhui 230039Abstract Based o

3、n Microsoft.Net frame, The ASP.NET provides a simple, efficient way to develop a dynamic web site . The blog system takes ASP.NET as the development technology, uses C # as the development language, has realized the blog website dynamic management, caused to the blog information management even more

4、 prompt, to be highly effective, enhanced the working efficiency. Meanwhile , They take an introduction on the system background demand, the system function characteristic and the design project . This article also introduces the MVC pattern under ASP.NET environment by taking an example for the use

5、rs management.Keywords ASP.NET, ADO.NET, Blog, System, DataBase引言博客,数字生活新时尚,通过文字、图片、声音、视频、无线等,尽情展示自我、分享感受、参与交流,美好你我生活。Show you, share me,人人都可以博客,人人都需要博客。1 项目背景“博客”一词是从英文单词Blog翻译而来。Blog是Weblog的简称,而Weblog则是由Web和Log两个英文单词组合而成。Weblog就是在网络上发布和阅读的流水记录,通常称为“网络日志”,简称为“网志”。它是继Email、BBS、IM之后出现的第四种全新的网络交流方式。它绝

6、不仅仅是一种单向的发布系统,而且有着极其出色的交流功能。另外Blog也提供了非常方便实用的个性化功能。简言之,Blog就是以网络作为载体,简易迅速便捷地发布自己的心得,及时有效轻松地与他人进行交流,再集丰富多彩的个性化展示于一体的综合性平台。2 需求分析2.1 需求调研任何一个系统的开发,必然有其需求者,博客系统也不例外,本系统通过对互联网中的各个博客系统的分析,得出从以下几个方面进行调研:(1)、收益需求:描述系统的商业需求和系统将带来的收益。(2)、日常功能:亲身体验一个博客在系统中如何交互,然后记录下来。(3)、通过论坛来了解各博客用户的需求:记录下各论坛中各博客用户对博客的要求记录。(

7、4)、制作邮件调查表:通过调查表的形式得出一些具体的书面信息,了解细节。2.2 创建用例图博客系统参与者:如图1图1 博客系统参与者博客系统用例:如图2图2 博客系统用例图2.3、详细描述用例(举例)用户登录用例如表1所示表1 用户登录用例表用例名称用户登录用例IDUC_11参与者用户、管理员描述用户登录系统过程风险低优先级高难度低启动主动进入用户登录画面或会话超时转入用户登录画面前置条件用户需在登录状态后置条件将用户信息放入会话中将用户相关的博客信息放入会话中显示博客阅读主画面主事件流用户系统1、进入或转入用户登录画面2、用户输入用户名和密码3、系统检查用户和密码是否合法4、系统检查用户是否

8、存在,密码是否正确5、读取用户的基本信息、博客的基本信息放入会话中6、转到管理博客的主画面异常流异常流系统中不存在该用户或用户名错误系统转入登录画面异常用户不存在或者密码错误用户登录用例图如图3所示:图3 用户登录用例图3 系统分析3.1 系统中的对象面向对象的开发的基石是对象,那么分析一个系统的开始就是从确定对象开始。那么这个系统重要的实体对象有:博客账户信息、用户、标题、用户名、密码、分类、文章、链接、评论、随笔、图片。而必须的对象有:文章,图片,随笔,链接,博客账号,分类,评论。3.2 开发技术分析 本系统采用ASP.NET开发技术进行开发。ASP.NET不仅仅是ASP的一个新版本,更是

9、Web应用程序编程方面的一个全新的概念和方法。ASP.NET中的新功能并不是对ASP的改进,设计它的初衷是为用户入境提供最佳的应用程序架构。它相比于ASP有着以下几个方面的优点:(1) 多语言ASP曾在脚本引擎方面受到了限制,特别是VBScript和Jscript。而ASP.NET则支持多种语言,默认情况下为Visual Basic.NET、C#和Jscript.NET,另外还支持一些第三方语言。(2) 服务器处理ASP在服务器处理上不管页面的内容是纯HTML还是ASP生成的HTML,它都是按照页面顺序显示的。因此逻辑代码依赖于它在页面中的位置,并且无法将HTML控件作为目标,除非将它们作为流

10、的一部分进行显示。而ASP.NET就解决了这个问题,方法是为控件引入一个声明的基于服务器的模型,因为控件在服务器上有,可以在服务器上编程,也可以是客户端驱动的事件。(3) Web Form控件将现有的HTML控件转换为服务器端的控件是比较容易的,但是也存在一些不方便,例如比较难于区分HTML控件和服务器端的控件。于是Microsoft公司就创建了一组专门的服务器控件,它们都用asp:前缀标识。(4) 代码与内容分离一个网站的设计与开发往往由不同的人来实现的,而ASP中就是存在着这样一个问题,代码(ASP脚本)和内容(HTML)混合在一起。这样就使得同时进行设计和开发变得很困难。而ASP.NET

11、则采用了代码内联和后台编码两种方法实现了代码与内容的分离。3.2 健壮性分析(举例)下面以对博客系统的用户登录用例为例进行健壮性分析:3.3.1 事件流分析事件流分析主要是针对系统中的用例描述中关于事件流的部分进行分析,此外还必须综合考虑基本路径和扩展路径两方面。3.3.2 边界对象分析边界对象:通常是用来完成参与者(用户、外部系统)与系统之间交互的对象。在用户登录这个用例中,由于不存在外部系统,而且参与者也只有一个,就是“用户”,因此它的边界对象有:(1)用户进入登录画面。(2)转到管理博客的主画面。3.3.3 实体对象分析实体对象:通常来自域模型,也就是现实世界,用来描述具体的实体,通常映

12、射到数据库表格与文件。这个用例的实体对象包括用户和博客账号信息。3.3.4 控制对象分析控制对象:主要用来体现应用程序的执行逻辑,将其抽象出来,可以使得程序不影响用户画面和数据库中的表。这个用例的控制对象有:检测博客账号的合法性。3.4 交互设计3.4.1 引入实体对象根据健壮性分析,可以把实体对象给罗列出来。这些对象通常也是每个类的一个实例。由于是用来描述运行时状态的情况,因此是对象,而非类。3.4.2 引入边界对象和参与者将实体对象引入之后,再就是将边界对象找出来,在交互设计中引入参与者和边界对象。3.4.3 引入控制对象将参与者、边界对象均引入之后,再就要结合健壮图中的控制对象,以及用例

13、描述中的事件流来确定对象之间的消息传递。3.4.4 添加类的属性与方法在交互设计中,将会发现类应该具有的方法,也会在设计中找到一些新的属性,而这些东西将近一步地完善交互设计。结合健壮分析、交互设计时引入设计类,并添加相应的属性与方法。3.4.5 引入基础类在着手开发之前,有一件很重要的事,那就是引入基础类。不管用什么样的开发工具进行代码编写,都将以各种库函数、框架作为开发基础。因此首先根据应用的需要选择相应的框架,然后再根据具体的局部需要选择相应的类库。这个系统中要进行数据库操作,可使用.NET Framework的ADO.NET进行数据库操作。在进行文本编辑时使用文本编辑,引入第三方控件,使

14、用FreeTextBox编辑器。在进行分页时,同样引入第三方控件,使用AspNetPager分页控件。由于这些第三方控件均是开放源码的,所以我们自己可以在开发的过程中对控件进行自己的改动,既有效又方便。需要将这些类库、控件引入到工程中。4. 代码实现4.1、编码之前的工作4.1.1 在visual 中创建解决方案 在Visual 中,系统的开发主要是以解决方案的形式解决。所以我们在开发这个博客系统前,首先要先创建一个解决方案,命名为MyBlog。4.1.2 文件夹的规划在一个Web项目中,文件夹也需要进行规划,通常包括ASP.NET页面、图片、样式文件、Flash动画等元素,需要把它们放置到不

15、同的文件夹,才能很好地管理文件。那么该系统的文件夹规划方式为:(1) Core文件夹下存放工程的类文件。(2) 根目录下只存放Default.aspx文件,根目录下的Images下存放与Default.aspx文件相关的图片。(3) ASP.NET页面需要按模块旋转到各文件夹,相关的图片放置到模块文件夹下面的Images文件夹下。(4) 样式文件放置到根目录下的Images文件夹下。4.2 MVC模式4.2.1 什么是MVC模式?MVC由Trygve Reenskaug提出,首先被应用在SmallTalk-80环境中,是许多交互和画面系统的构成基础。MVC结构是为那些需要为同样的数据提供多个视

16、图的应用程序而设计的,它很好地实现了数据层与表示层的分离。MVC作为一种开发模型,通常用于分布式应用系统的设计和分析,以及用于确定系统各部分间的组织关系。对于画面设计可变性的需求,MVC(Model-View-Controller)把交互系统的组成分解成模型、视图、控制器3种部件。(1) 视图部件把表示模型数据及逻辑关系和状态的信息以特定形式展示给用户。它从模型获得显示信息,对于相同的信息可以有多个不同的显示形式或视图。(2) 控制器部件是处理用户与软件的交互操作的,其职责是控制提供模型中任何变化的传播,确保用户画面与模型间的对应联系;它接受用户的输入,将输入反馈给模型,进而实现对模型的计算控

17、制,是使模型和视图协调工作的部件。(3) 模型部件保存由视图显示、由控制器控制的数据;它封装了问题的核心数据、逻辑和功能的计算关系,它独立于具体的画面表达和I/O操作。模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其他依赖于这些数据的视图都应反映了这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化传播机制。4.2.2 ASP.NET模式下如何实现MVC?ASP.NET提供了一个很好的实现这种经典设计模式的类似环境。开发者通过在ASPX页面中开发用户接口来实现视图;控

18、制器的功能在逻辑功能代码(.cs)中实现;模型通常对应应用系统的业务部分。在ASP.NET中实现这种设计而提供的一个多层系统,对较经典的ASP结构实现的系统来说有明显的优点。将用户显示(视图)从动作(控制器)中分离出来,提高了代码的重用性。将数据(模型)从对其操作的动作(控制器)分离出来,可以让用户设计一个与后台存储数据无关的系统。就MVC结构的本质而言,它是一种解决耦合系统问题的方法。4.3 用户组件和样式的设计博客系统中存在很多相同或相似的元素,这些元素可能是页面的标题,可能是页面的版权声明,也可能是文章的列表或是登录信息框。需要寻找一种方式在整个系统中共享,而不需在变化时修改所有的页面。

19、所以就采用了样式文件进行管理以及用户自定义组件。4.3.1 使用统一样式表在样式文件中主要对以下五个内容进行定义:(1) 博客标题:它是博客随笔、文章标题、图片名称的样式定义。(2) 博客内容:它是博客内容、文章内容的样式定义。(3) 博客版权信息:它是博客系统的页面下方显示博客系统的版权信息的样式定义,在Footer用户控件中使用。(4) 导航栏:它是博客系统上方导航栏的样式定义,在Header用户控件中使用。(5) 输入框:它是博客系统表单元素的样式定义。4.3.2 设计用户控件ASP.NET为开发人员提供了用户控件这一新技术来实现Web元素的共享,开发人员可以通过Visual Studi

20、o.Net进行Web元素的外面的开发,同时可以通过Web元素后台代码的方式进行表现层的开发。在这个博客系统中,使用了Header、Footer等用户控件。4.4、数据库设计 博客系统中的数据管理形式采用数据库,根据系统需要与数据规范化分为博客账户信息表(blog),博客文章信息表(Article),博客随笔信息表(Essay),博客类别表(Category),博客评论表(FeedBack),博客链接表(Href),博客图片表(Picture)这七个表,表结构分别如下:表2 博客账户信息表(blog)列名数据类型长度允许空备注BlogIDInt4没有实际意义,作为该表主键存在SubjectNva

21、rchar50Null博客的名称UsernameNvarchar50Null博客的用户名PasswordNvarchar50Null博客的密码DescriptionNvarchar100Null博客的描述EmailNvarchar200Null博客的电子邮箱EntrynumInt4Null博客的每页文章显示数量NameNvarchar50Null角色名称RoleInt4Null角色EssaycountInt4Null随笔数ArticlecountInt4Null文章数FeedbackcountInt4Null评论数表3 博客文章信息表(Article)列名数据类型长度允许空备注ArticleI

22、DInt4文章表的主键SubjectNvarchar50Null文章标题ContentNtext16Null文章内容CategoryIDInt4Null文章所属分类号BlogIDInt4Null文章所属博客号TimeNvarchar50Null发表时间ViewInt4Null查看次数FeedbackInt4Null评论数表4 博客随笔信息表(Essay)列名数据类型长度允许空备注EssayIDInt4随笔表的主键SubjectNvarchar50Null随笔标题ContentNtext16Null随笔内容CategoryIDInt4Null随笔所属分类号BlogIDInt4Null随笔所属博客

23、号TimeNvarchar50Null发表时间ViewInt4Null查看次数FeedbackInt4Null评论数. 表5 博客类别表(Category)列名数据类型长度允许空 备注CategoryIDInt4主键NameNvarchar50Null类别名称BlogIDInt4Null类别所属的博客号TypeNvarchar10Null类别所属博客类型DescriptionNvarchar500Null该类别的描述表6 博客评论表(FeedBack)列名数据类型长度允许空备注FeedBackIDInt4评论号,主键SubjectNvarchar50Null评论标题ContentNtext16

24、Null评论内容BlogIDInt4Null针对评论的博客号CategoryIDInt4Null该评论的博客类别号ContentIDInt4Null针对博客标题评论的内容号CategoryNvarchar50Null评论所属类别TimeNvarchar50Null发表评论的时间UsernameNvarchar50Null评论人姓名UrlNvarchar100Null评论人邮箱表7 博客链接表(Href)列名数据类型长度允许空备注HrefIDInt4链接号,主键NameNvarchar50Null链接名字UrlNvarchar200Null链接CategoryIDInt4Null链接所属类别号B

25、logIDInt4Null链接所属博客号表8 博客图片表(Picture)列名数据类型长度允许空备注PictureIDInt4图片号,主键ImageUrlNvarchar200Null图片链接SubjectNvarchar50Null图片标题CategoryIDInt4Null图册号BlogIDInt4Null图片所属博客号4.5 系统实现4.5.1 系统结构图 根据前面的需求分析可以得出以下的系统结构图:图4 系统结构图各界面如下:(1)、阅读博客:图5 阅读博客界面(2)、随笔管理:(文章管理、评论管理、链接管理、图片管理均类似)图6 随笔管理界面后台管理的密码管理界面:图7 后台管理的密

26、码管理界面系统管理主界面:图8 系统管理主界面系统管理的账户管理界面:图9 账户管理界面系统管理的密码管理界面同后台管理,如图七。4.5.2 代码实现 整个系统的代码实现均采用表现层、控制层、数据层来实现,并且定义了一个抽象类DBObject类,其它一些类均由这个类继承。具体实现的过程是用户在页面(表现层)激发事件,那么页面的后台代码(控制层)作出回应,根据事件的不同来调用数据层对数据库进行操作。以下以随笔管理为例来说明ASP.NET的代码实现。(1) 实现表现层图六所示即为随笔管理列表页面,它的代码在BlogAdminEssayEssay.aspx中。这个页面由三大部分组成。标头与导航栏做成

27、了用户控件,在左右的功能区中,左下角的分类列表是由一个列表控件Datalist捆绑数据后生成的,用到了ItemTemplate模板。ItemTemplate模板代码如代码1:代码1 ItemTemplate模板    页面的中右区为随笔信息列表,这也是由Datalist列表控件绑定数据后生成的,这里不仅定义了ItemTemplate,还定义了HeaderTemplate模板、AlternatingItemTemplate模板、SeparatorTemplate模板和FooterTemlplate模板。如代码2所示:代码2 DataList列表控件绑定数据标题分类浏览人数td background=/blog/Images/main/l-bg3.jpg wi

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1