aspnet35项目实例之博客模块

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

项目开发实战A光盘\ASP.NET项目\A-博客模块\博客模块.doc博客模块博客的个性化和平民视角使得它提供的消息更贴近人们的生活,所以很多人都想建立自己的网络空间。过去,传统的网络交往方式主要是留言本、BBS(论坛)、聊天室及IM(即时通信)等,但它们或多或少都存着不足。留言本主要用来留言,不能进行留言回复;BBS主要用来探讨问题;IM要想发挥作用,必须要求交流的双方同时在线;而聊天室更是闲人的乐园。博客的存在,可以说是一种网络的虚拟社区。在这里用户可以通过网络日志的形式方便快捷地发表自己的心得体会,及时有效并轻松地与他人交流。本模块将介绍如何创建一个博客系统。通过本章的学习,读者能够学到:博客文章评论管理博客文章管理博客链接管理热点文章排行通过IE地址栏进入用户BlogGeneratedbyFoxitPDFCreator©FoxitSoftware模块功能概述随着博客(Blog)的快速发展,博客已经成为朋友、家庭之间越来越盛行的沟通工具,是当今网络不可缺少的一部分。博客(Blog)作为网络的一种表现形式正在越来越受到大家的欢迎。博客最主要的应用有二个方面:一是新的人际交流方式;二是以个人为中心的传播出版。其中尤以具有鲜明的个人特色的传播出版引人瞩目。以个人为中心的博客,以独特的视角、敏锐的观察力,逐渐冲击着传统媒体,尤其是新闻界多年来形成的传统观念和道德规范。本模块将介绍如何设计与开发一个博客系统。用户可以在该博客模块中创建属于自己的博客空间,以发表自己的文章,并对其他博客好友文章进行浏览、评论等操作,管理员可对博客发表的文章进行分类管理、网站的链接管理、用户信息管理等。另外,在博客首页中设置了如热点文章排行、博客最新发表文章等功能。A.2数据库设计在程序开发过程中,数据库设计的是非常重要的一个环节。一个设计良好的数据库结构,可以提高效率,方便维护,并且为以后进行功能的扩充留有余地。这就好比高楼大厦一样,有稳固的基础,才能有优秀的成果。A.2.1数据库概要说明本网站采用SQLServer2000数据库,名称为db_Blog,其中包含9张数据表。从读者角度出发,使读者对本网站数据库中数据表有一个更清晰的认识,笔者在此设计了数据表树型结构图,如图A.1所示,其中包含了对系统中所有数据表的相关描述。图A.1系统数据表结构图A.2.2数据库逻辑设计由于本书的篇幅所限,笔者在此只给出较重要的数据表,其他数据表请参见本书附GeneratedbyFoxitPDFCreator©FoxitSoftware带的光盘。ST_news(文章信息列表)文章信息列表,用来记录文章信息,如表A.1所示。表A.1ST_news(文章信息列表)字段类型长度是否为空说明ST_n_idint4否文章唯一ID号ST_n_authornvarchar50是文章作者ST_n_titlenvarchar200是文章标题ST_n_keynvarchar200是文章摘要ST_n_contentntextr50是文章内容ST_n_datedatetime8是文章发表日期ST_n_hitbigint8是文章人气ST_n_rebigint8是文章回复ST_c_idbigint8是文章类型编号ST_c_namenvarchar50是文章类型名称ST_n_iscmdint4是文章回复数ST_replay(评论信息列表)评论信息列表,用来保存评论信息,如表A.2所示。表A.2ST_replay(评论信息列表)字段类型长度是否为空说明ST_r_idbigint8否评论唯一ID号ST_r_nicknvarchar50是呢称ST_r_titlenvarchar250是评论标题ST_r_contentnvarchar250是评论内容ST_r_datedatetime8是评论发表时间ST_n_idint4是评论文章编号ST_message(留言信息列表)留言信息列表,用来保存留言信息,如表A.3所示。表A.3ST_message(留言信息列表)字段类型长度是否为空说明ST_idbigint8否留言唯一ID号ST_nicknamenvarchar50是网友呢称ST_titlenvarchar50是留言标题ST_homepagenvarchar50是个人主页ST_contentntext16是留言内容ST_mdatedatetime8是留言时间GeneratedbyFoxitPDFCreator©FoxitSoftware当注册为该博客的会员并发表了自己的博客文章后,如以下两个图A.2和A.3所示(在配置完的IIS中运行的结果),在主界面的IE地址栏内指定位置输入一个下划杠加上用户注册的用户名(例如:“_明日科技,_编程词典”等)后即可快速查找到用户所发表的全部文章。同样,可以以这种方式来快速查找该博客中自己所发表的全部文章。图A.2通过IE地址栏快速查找用户文章1图A.3通过IE地址栏快速查找用户文章2实现以上功能,主要是应用了URL重写。URL重写是截取传入Web请求并自动将请求重定向到其他URL的过程,比如比如浏览器发来请求hostname/188.aspx,服务器自动将这个请求中定向为=188。该重写功能的实现主要是在ASP.NET中引入了一个的名为URLRewriter的dll文件,该dll文件可构建一个使用简单URL重写的ASP.NETWeb应用程序。应用URL重写有如下优点:缩短url,隐藏实际路径提高安全性;易于用户记忆和键入;易于被搜索引擎收录。URLRewriter.dll文件可以从微软官方网站上下载。在项目的Bin文件夹下添加引用了URLRewriter.dll文件后,在web.config里设置如下代码,除了实现主界面的IE地址栏指定位置内输入一个下划杠加上用户名后可快速查找到所发表的全部文章这三个功能外,还实现了在博客主界面中当用户单击“点击阅读全文”超链接和单击“博客文章类型”列表中任一个类别时进行URL重写。例例程程11代代码码位位置置::光光盘盘//AASSPP..NNEETT项项目目//AA--博博客客模模块块//mmyyBBlloogg//WWeebb..ccoonnffiigg?xmlversion=1.0?configurationconfigSectionssectionname=RewriterConfigtype=URLRewriter.Config.RewriterConfigSerializerSectionHandler,URLRewriter/connectionStringsRewriterConfigRules!--RulesforBlogContentDisplayer--RewriterRuleLookFor~/(\d+)\.aspx/LookForSendTo~/ST_show.aspx?id=$1/SendTo/RewriterRuleGeneratedbyFoxitPDFCreator©FoxitSoftware~/BlogIndex_(.*)_(\d+)\.aspx/LookForSendTo~/BlogIndex.aspx?c_id=$2&name=$1/SendTo/RewriterRuleRewriterRuleLookFor~/BlogIndex_(.*)\.aspx/LookForSendTo~/BlogIndex.aspx?name=$1/SendTo/RewriterRule/Rules/RewriterConfig其中:sectionname=RewriterConfigtype=URLRewriter.Config.RewriterConfigSerializerSectionHandler,URLRewriter/用于指定配置节RewriterConfig的处理程序类的名称为”URLRewriter.Config.RewriterConfigSerializerSectionHandler”,该类存在于bin目录下的URLRewriter.dll文件中。在上述Web.config配置文件中,最关键的代码类似于以下两句代码:LookFor~/d(\d+)\.aspx/LookForSendTo~/default.aspx?id=$1/SendTo其中,LookFor/LookFor标记内的元素表示用户输入的url,d(\d+)\.aspx是url中文件名匹配的正则表达式(此处为字母d开头,后面跟一个或多个数字,并以.aspx结尾。用户也可根据自己的需要自行设定);而SendTo/SendTo标记内的元素表示当服务器接收到符合上面条件的请求后如何重写url,此处表示访问defalutl.aspx并传入参数id,其值$1将用用户请求的文件名中的第一个数字来表示。例如,用户输入hostname/d188.aspx,服务器会把他重写为=188。换句话说用户输入,实际访问的是=188,这样就起到了隐藏真实文件名,并便于用户记忆的作用。A.3.2Iframe框架技术在博客管理员界面首页设计中主要应用了页面框架布局中的Iframe框架技术。应用此技术可以在同一个页面中多次显示同一内容,而不必重复这段内容的代码。通过此框架将网站中各部分独立的网页,重新组成一个完整的网页,显示在浏览器中。iframe是框架的一种形式,它与frame不同的是,iframe可以嵌在网页中的任意部分。Iframe框架一个形象的比喻即“画中画”电视。与其它设计页面的框架相比,内嵌框架Iframe更容易对网站的导航进行控制,最大的优点在于其灵活性。正是基于此原因,Iframe框架多被用于网站的后台管理。Iframe框架的标记为Iframe(又叫浮动帧标记),可以用它将一个HTML文档嵌入在一个HTML中显示。它和Frame标记的最大区别是在网页中嵌入的Ifame/Iframe所包含的内容与整个页面是一个整体,而Frame/Frame所包含的内容是一个独立的个体,是可以独立显示的。设置Iframe框架的Iframe参数的示例代码如下:iframesrc=urlname=mainwidth=100%height=30frameborder=0border=0scrolling=nomarginwidth=0marginheight=0GeneratedbyFoxitPDFCreator©FoxitSoftware上段代码的各项参数设置及含义如表A.4所示。表A.4Iframe参数及说明参数说明Name设定框架的名称,须为英文Src设置框架中显示的页面路径和名称,可为相对路径亦可为绝对路径Marg

1 / 39
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功