ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目 教学课件 ppt 作者 杨树林 胡洁萍 ASP.NET_9

上传人:E**** 文档编号:89353702 上传时间:2019-05-23 格式:PPT 页数:39 大小:683KB
返回 下载 相关 举报
ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  杨树林 胡洁萍 ASP.NET_9_第1页
第1页 / 共39页
ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  杨树林 胡洁萍 ASP.NET_9_第2页
第2页 / 共39页
ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  杨树林 胡洁萍 ASP.NET_9_第3页
第3页 / 共39页
ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  杨树林 胡洁萍 ASP.NET_9_第4页
第4页 / 共39页
ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  杨树林 胡洁萍 ASP.NET_9_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目 教学课件 ppt 作者 杨树林 胡洁萍 ASP.NET_9》由会员分享,可在线阅读,更多相关《ASP.NET程序设计案例教程 工业和信息化普通高等教育“十二五”规划教材立项项目 教学课件 ppt 作者 杨树林 胡洁萍 ASP.NET_9(39页珍藏版)》请在金锄头文库上搜索。

1、第9章 BBS综合案例,杨树林 北京印刷学院,本章要点,BBS的系统分析、数据库设计、系统结构设计 BBS系统的对象模型的创建 BBS系统的接口设计 BBS系统的数据访问层实现 BBS系统的业务逻辑层实现 BBS系统的配置 BBS系统的表现层实现,9.1 系统分析与设计,系统分析的目的就是为系统设计提供系统的逻辑模型。系统设计再根据这个逻辑模型进行物理方案的设计。,9.1.1 系统分析,1需求描述 论坛是一种基于网络的交流工具,一个论坛主要具备以下几个基本功能: 用户通过注册成为注册用户,注册后的用户可以登录。 用户可以浏览贴子,能对帖子进行查询,但不能发表主题或回复帖子。 注册用户后可以发表

2、主题或回复帖子,也可以修改帖子。 管理员可以管理版面,管理主题,管理用户,管理帖子。,2用例分析 用例图(Use-case Diagram)显示外部参与者与系统的交互,能够更直观地描述系统的功能。绘制用例图,首先要明确系统外部参与者。从角色来看,一个论坛系统主要涉及三种参与者:管理员,登录用户,普通用户。图9-1是论坛系统的用例图。,9.1.2 总体设计,1功能模块设计 为了设计方便,将系统中的两类帖子分开,即分为主题帖(简称为主题)和回复帖子(简称为帖子)。 表9-1给出了论坛系统的模块划分。,2数据库设计 系统数据库命名为BBS,包含7个数据表分别为BbsForum(版块),BbsThem

3、e(主题),BbsMessage(帖子),aspnet_Users(用户),aspnet_MemberShip(成员),aspnet_Roles(角色)以及aspnet_UserInRoles(角色中的用户),如图9-2所示。,3系统结构设计 系统采用分层结构,整体上分三层:表现层、业务逻辑层和数据访问层。数据访问层采用LING技术实现,在LINQ to SQL文件(.dbml文件)放在Model项目中。用户管理采用成员资格和角色管理技术,具体实现主要集中在表现层。,与前面章节介绍的书城系统不同的是,BBS系统的各层分别放在不同的程序集中,以不同的项目来建立。这是大型项目中经常使用的方式。主要

4、目的是为了便于开发和维护,减少各层之间的耦合。 BBS系统的解决方案命名为BBS_APP,在该解决方案下建立7个项目:Model(对象模型项目),IDAL(数据访问层接口项目),DAL(数据访问层实现类项目),IBLL(业务逻辑层接口项目),BLL(业务逻辑层实现类项目),Util(其他工具类型项目)和BBS(BBS网站项目)。在具体开发时,可以单独建立项目,每个项目设计好后,再添加到解决方案中,也可以直接在解决方案中建立项目。为了突出结构设计,这里选择后者。,9.1.3 创建对象模型,对象模型是关系数据库在编程语言中表示的数据模型,对对象模型的操作就是对关系数据库的操作。LINQ to SQ

5、L对象模型中最基本的元素有实体、类成员、关联和方法。 对象模型在LINQ to SQL文件(.dbml文件)中定义,在对象关系设计器(O/R 设计器)中创建和编辑。,9.1.4 接口设计,1数据访问层接口设计 数据访问层接口的设计步骤如下: (1)引用所需项目。数据访问层接口需要使用对象模型项目中的实体类,因此首先需要引用Model项目。 (2)设计版块数据访问接口。 (3)设计主题数据访问接口。 (4)设计帖子数据访问接口。,2业务逻辑接口设计 业务逻辑接口的设计步骤如下: (1)引入所需项目。业务逻辑层接口需要使用对象模型项目中的实体类,因此首先需要引用Model项目。 (2)设计版块业务

6、逻辑接口。 (3)设计主题业务逻辑接口。 (4)设计帖子业务逻辑接口。,9.2 数据访问层实现,数据访问类放在DAI项目中。数据访问类需要使用对象模型项目中的实体类和IDAL项目中的数据访问接口,因此,在设计数据访问类之前,首先要引用Model项目和IDAL项目。,9.2.1 版块数据访问类(BbsForumDal),该类主要实现对版块的增、删、改、查,其代码如下所示。,9.2.2 主题数据访问类(BbsThemeDal),该类主要实现对主题的增、删、改、查。在添加主题时,要同时增加版块中的主题数量;在删除主题时,要同时减少版块中的主题数量。,9.2.3 帖子数据访问类(BbsMessageD

7、al),该类主要实现对帖子的增、删、改、查。在添加帖子时,要同时增加主题中的帖子数量;在删除帖子时,要同时减少主题中的帖子数量。,9.3 业务逻辑层实现,业务逻辑类放在BLL项目中。业务逻辑类需要使用对象模型项目中的实体类和IBLL项目中的业务逻辑接口、IDAL项目中的数据访问接口以及Util项目中的工厂类。因此,在设计业务逻辑类之前,首先要在BLL项目中引用Model项目、IBLL项目、IDAL项目以及Util项目。业务类中使用工厂类获得数据访问类实例。,9.3.1 版块业务逻辑类(BbsForumBLL),9.3.2 主题业务逻辑类(BbsThemeBLL),9.3.3 帖子业务逻辑类(B

8、bsMessageBLL),9.4 系统配置,9.4.1 连接字符串及环境变量配置 在建立Linq对象模型时,会在当前的项目下建立数据库连接配置。默认的连接配置与所使用的【服务器资源管理器】中的连接配置一致。如果需要修改,可以在BBS.dbml文件视图的空白处单击右键,在弹出的菜单中选择【属性】,打开【属性】对话框,对Connection属性进行设置。这里不做修改。,在Web.config文件中增加如下配置: 这里的连接配置主要用于成员资格管理。环境变量主要用于工厂模式建立对象。,9.4.2 验证模式、成员及角色管理配置,配置步骤如下: (1)选择【视图】【ASP.NET配置】,打开网站管理工

9、具,利用该工具建立两个角色:admin、member。 (2)打开BBS网站根目录下的Web.config文件,在其节增加配置。 (3)在BBS网站的Admin文件夹下建立一个Web.config文件 。 (4)在BBS网站的Member文件夹下建立一个Web.config文件。,9.5 表现层设计,因篇幅限制,视图层主要介绍前台功能的实现。后台功能的实现,读者可参考自行实现。,9.5.1 主题设计,根据分析,论坛网站中网页的页面结构如图9-10所示。页面采用div布局,图中标出了div的ID。,9.5.2 母版及主页设计,1. 母版设计 母版页规划了界面的布局,总体上分head、top、co

10、ntent、bottom四个区域,分别为题头区、顶部区、内容区和页脚区。顶部区从左到右划分为topleft和topright两个区域,即顶部左区和顶部右区。顶部右区即为用户状态区。顶部左区上下分为welcome、subtitle和topbutton三区域,分别为欢迎区、子标题区和顶部导航按钮区。这些区域中,除subtitle、topbutton和content三个区域外,其他区都可以放在母版中实现。在subtitle、topbutton和content这三个区域各放一个内容占位控件。,2.主页设计 (Default.aspx) 论坛主页主要用于呈现版块。该页面是一个内容页,放在站点根目录下。在

11、该页面单击版块标题可进入主题页。运行效果如图9-11和9-12所示。,9.5.3 主题视图设计,主题浏览页(Theme.aspx) 当用户在主页上选择单击某版块后,将进入主题浏览页,主题浏览页以列表的形式列出该版块的所有主题,并可分页和查询。运行效果如图9-13所示。该页面是一个内容页,放在User目录下。,主题添加页(ThemeAdd.aspx) 主题添加页用于发表主题。该页面是一个内容页,放在Member目录下。当用户在主题浏览页上单击“发表主题”超链接后,进入主题添加页,主题添加页的运行效果如图9-14所示。,主题修改页(ThemeEdit.aspx) 登录用户可以修改自己发表的主题,但

12、主题锁定后将不能修改。在帖子浏览页(参见9.5.4),单击【修改】超链接,可进入主题修改页。主题修改页与主题添加页的设计很类似。主要的不同是,为ObjectDataSource1配置数据源时,定义SELECT和UPDATE的数据方法分别为FindBbsThemesById和EditBbsTheme,并为SELECT配置参数,themeId的【参数源】设为QueryString,【QueryStringField】设为themeId。 此外,设置DetailsView1的DefaultMode属性为Edit。并为DetailsView1添加ItemUpdated、ModeChanging事件,为

13、ObjectDataSource1添加Updated事件。运行界面如图9-15所示。,9.5.4 帖子视图设计,1. 帖子浏览页(Message.aspx) 当用户在主题浏览页单击一个主题的标题时,将进入帖子浏览页,在帖子浏览页,显示主题的内容,并以列表的形式列出该主题的所有回复帖子,回复帖分页显示。该页面是一个内容页,放在User目录下。运行效果如图9-16所示。,2. 回复主题页(AddMessage.aspx) 回复主题,即发布回复帖子。登录用户可以回复主题,但已经锁定的主题不能再回复。回复主题页也是一个内容页,放在Member文件夹下。该页的设计类似于主题添加页。界面的运行效果如图9-

14、17所示。,3. 修改帖子页(AddMessage.aspx) 登录用户可以修改自己回复的帖子,但主题被锁定后,回复的帖子也不能再修改。回复帖子页也是一个内容页,放在Member文件夹下。该页的设计类似于主题修改页。这里不再给出设计步骤。界面的运行效果如图9-18所示。,9.5.5 用户视图设计,1. 用户登录页(Login.aspx) 用户登录页是一个内容页,放在User文件夹下。该页使用1个Login控件,设置其BackColor属性为Aqua,Font.Size属性为14px,Width属性为226px。TextBoxStyle.Width属性为150px。运行效果如图9-19所示。,2

15、. 用户注册页(Register.aspx) 用户注册页是一个内容页,放在User文件夹下。该页使用1个CreateUserWizard控件,设置其BackColor属性为Aqua,Font.Size属性为14px,Width属性为286px。TextBoxStyle.Width属性为150px。运行效果如图9-22所示。,3. 用户修改页(UserEdit.aspx) 用户修改页是一个内容页,放在Member文件夹下,用于修改用户密码。该页使用1个ChangePassword控件,设置其BackColor属性为Aqua,Font.Size属性为14px,Width属性为286px,TextBoxStyle.Width属性为150px。运行效果如图9-21所示。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号