1、 .NET 程序设计 大型实验报告 设计题目 : 基于 .NET 的博客系统 班 级: 姓 名: 学 号: 指导老师: 2011 年 12 月 摘 要 基于 Microsoft.Net环境的 ASP.NET技术 ,为开发功能强大的动态网站提供了一种简单、高效的途径。该博客系统以 ASP.NET 为开发技术,使用 C为开发语言,实现了博客网站的动态管理,使得对博客信息的管理更加及时、高效,提高了工作效率。同时对系统的背景需求、系统的功能特点和设计方案进行了介绍。该文还以随笔管理为例,对 ASP.NET 环境下的 MVC 开发模式进行了简单的介绍。 “ 博客 ” 一词是从英文单词 Blog 翻译而
2、来。 Blog 是 Weblog 的简称,而 Weblog则是由 Web 和 Log 两个英文单词组合而成。 Weblog 就是在网络上发布和阅读的流水记录,通常称为 “ 网络日志 ” ,简称为 “ 网志 ” 。 它 是继 Email、 BBS、 IM 之后出现的第四种全新的网络交流方式。 它 绝不仅仅是一种单向的发布系统, 而且 有着极其出色的交流功能。 另外 Blog 也 提供了非常方便实用的个性化功能。简言之, Blog就是以网络作为载体,简易迅速便捷地发布自己的心得,及时有效轻松地与他人进行交流,再集丰富多彩的个性化展示于一体的综合性平台。 关键词 : ASP.NET; ADO.NET
3、;博客;系统;数据库 一、 需求分析 任何一个系统的开发,必然有其需求者,博客系统也不例外,本系统通过对互 联网 中的各个博客系统的分析,得出从以下几个方面进行调研: ( 1)、收益需求:描述系统的商业需求和系统将带来的收益。 ( 2)、日常功能:亲身体验一个博客在系统中如何交互,然后记录下来。 ( 3)、通过论坛来了解各博客用户的需求:记录下各论坛中各博客用户对博客的要 求记录。 ( 4)、制作邮件调查表:通过调查表的形式得出一些具体的书面信息,了解细节。二、 功能分析 创建用例图 : 博客系统参与者:如图 2.1 图 2.1 博客系统参与者 博客系统用例:如图 2.2 图 2.2 博客系统
4、用例图 用户登录用例图如图 2.3所示: 用户 博客访问者 系统管理员 博客管理员 管理博客账号 删除博客内容 阅读博客内容 用户 登录 修改账号信息 浏览博客目录 发表评论 管理博客内容 用户 博客管理员 博客访问者 系统管理员 图 2.3 用户登录用例图 二、 系统设计 本系统是面向个人用户和小型集体用户开发的系统,完成用户在 Blog上进行预定操作,实现 博主和浏览者 之间的双向沟通。具体设计方案为: (1) 数据库为 SQL Server2000,整个系统界面采用 Microsoft visual Studio 2005开发。 (2) 系统采用 MVC框架,用 C#语言实现。 (3)
5、系统分成两部分,前台为浏览者 操作界面,功能包括: 注册,浏览文章,浏览某个博客文章 ,发布评论 。后台为博主操作界面,博主 通过登录进入管理界面,功能包括: 文章管理,评论管理,链接管理 。 1、 架构设计: Web 层表示系统的界面部分,项目类型为 ASP.NET 网站,包括 html 页面、 aspx页面、图片、样式、 JS 脚本等网站资源。 Business 层是网站功能模块,项目类型为 C#类,用于处理用户请求和网站响应。其中 Util 模块是常用工具类包,包括字符串类、安 全类等。 Data 层包括各种数据实体,以及访问数据库的通用类( SQL Server 访问类,包括执行 SQ
6、L 语句、执行存储过程、事务控制等功能),项目类型为 C#。 分析 Blog系统这一环节所应具有的功能,可以得到 Blog系统应具有以下功能: 高级系统用户(博主 )通过浏览器,可以实现文章的管理( 查看自己的博客文章列表,发表文章、编辑文章、删除文章。 )、 浏览者 对文章信息只能 查看和评论 。 2、数据库设计: 博客系统中的数据管理形式采用数据库,根据系统需要与数据规范化分为 博客账户信息表 (blog),博客文章信息表( Article),博客随笔信息表( Essay),博客类别表( Category),博客评论表( FeedBack),博客链接表( Href),博客图片填写用户名、密
7、码 验证用户名、密码 进入登录前的界面 储存博客账号信息 提示用户登录失败 表( Picture)这七个表,表结构分别如下: 博客账户信息表 (blog) 列名 数据类型 长度 允许空 备注 BlogID Int 4 没有实际意义,作为该表主键存在 Subject Nvarchar 50 Null 博客的名称 Username Nvarchar 50 Null 博客的用户名 Password Nvarchar 50 Null 博客的密码 Description Nvarchar 100 Null 博客的描述 Email Nvarchar 200 Null 博客的电子邮箱 Entrynum In
8、t 4 Null 博客的每页文章显示数量 Name Nvarchar 50 Null 角色名称 Role Int 4 Null 角色 Essaycount Int 4 Null 随笔数 Articlecount Int 4 Null 文章数 Feedbackcount Int 4 Null 评论数 博客文章信息表( Article) 列名 数据类型 长度 允许空 备注 ArticleID Int 4 文章表的主键 Subject Nvarchar 50 Null 文章标题 Content Ntext 16 Null 文章内容 CategoryID Int 4 Null 文章所属分类号 Blog
9、ID Int 4 Null 文章所属博客号 Time Nvarchar 50 Null 发表时间 View Int 4 Null 查看次数 Feedback Int 4 Null 评论数 博客随笔信息表( Essay) 列名 数据 类型 长度 允许空 备注 EssayID Int 4 随笔表的主键 Subject Nvarchar 50 Null 随笔标题 Content Ntext 16 Null 随笔内容 CategoryID Int 4 Null 随笔所属分类号 BlogID Int 4 Null 随笔所属博客号 Time Nvarchar 50 Null 发表时间 View Int 4
10、 Null 查看次数 Feedback Int 4 Null 评论数 博客类别表( Category) 列名 数据类型 长度 允许空 备注 CategoryID Int 4 主键 Name Nvarchar 50 Null 类别名称 BlogID Int 4 Null 类别所属的博客号 Type Nvarchar 10 Null 类别所属博客类型 Description Nvarchar 500 Null 该类别的描述 博客评论表( FeedBack) 列名 数据类型 长度 允许空 备注 FeedBackID Int 4 评论号,主键 Subject Nvarchar 50 Null 评论标题
11、 Content Ntext 16 Null 评论内容 BlogID Int 4 Null 针对评论的博客号 CategoryID Int 4 Null 该评论的博客类别号 ContentID Int 4 Null 针对博客标题评论的内容号 Category Nvarchar 50 Null 评论所属类别 Time Nvarchar 50 Null 发表评论的时间 Username Nvarchar 50 Null 评论人姓名 Url Nvarchar 100 Null 评论人邮箱 博客链接表( Href) 列名 数据类型 长度 允许空 备注 HrefID Int 4 链接号,主键 Name
12、Nvarchar 50 Null 链接名字 Url Nvarchar 200 Null 链接 CategoryID Int 4 Null 链接所属类别号 BlogID Int 4 Null 链接所属博客号 博客图片表( Picture) 列名 数据类型 长度 允许空 备注 PictureID Int 4 图片号,主键 ImageUrl Nvarchar 200 Null 图片链接 Subject Nvarchar 50 Null 图片标题 CategoryID Int 4 Null 图册号 BlogID Int 4 Null 图片所属博客号 三、 模块设计 登录模块 这是一个登录页面和其代码,
13、其中有博主的使用者可以通过登录界面进入博客系统,进行对博客的管理界面。如果还没有用户名的话,可以 注册一个 , 也可以以浏览者的身份进入该博客,进行浏览博主的文章,和个人信息,还可以给博主的文章进行评论 。下面是运行出来的效果图: 相关代码如下: 登录 if (top.location != self.location) top.location=self.location; 登录 帐号 (U): 密码 (P): 验证码 (V): 返回首页 Powered by Loachs 博客主页面 这是博主对 文章 , 评论 ,管理的主页面,通过导航,博主可以进入相应的界面,对博客系统进行操作。 下面是运行出来的效果图: 相关的代码如下: 1、 无标题页 欢迎 () | 管理中心 | 返回首页 | 退出 管理中心 内容管理 添加文章 文章管理 评论管理 分类管理 标签管理 附件管理 网站管理 主题管理 链接管理 作者管理 网站设置 数据管理 Powered by “ target=“_blank“Loachs 2、 管理中心