【asp源码栏目提醒】:网学会员在asp源码频道为大家收集整理了“ASP.NET+SQL Server 商务系统开发与典型实例 第11章 - 职业教育“提供大家参考,希望对大家有所帮助!
9/12课件 第11章 热点影片推荐模块 本章要点: 本章介绍系统中的一个非常重要的模块——热点 影片推荐,这个模块是整个系统的核心模块之 一,它实现了在网站首页进行新影片的推荐以及 试看功能。
整个模块的架构按照标准的3层架构, 底层应用大量的存储过程来实现对数据库的访问 以及相关操作。
本章内容包括: 热点影片推荐模块简介 热点影片推荐模块代码详解2 热点影片推荐模块数据库分析 9/12 课件 11.1 模 块 简 介 本模块的主要功能是在网站的首页显示热点推 荐的新片,并且管理员可以在后台随时更新这 些影片。
“热点推荐”是一个很常见的功能,在很多网站 都有所体现,它的主要特点就是实效性很强。
就本书这个网站来讲,随着新影片的涌现,首 页上的这些热点推荐影片就要随时更换,这就 要求在网站的后台管理系统里可以管理这些影 片。
3 9/12 课件 11.2 实 现 效 果 这里截取了5个网页的部 分界面,图16.1是热点影 片推荐模块的实现效果, 它是网站首页的一部分; 图16.2是影片详细信息网 页界面的截图;图16.3和 图16.4都来自网站后台系 统,其中图16.2是影片类 别管理界面,图16.3是新 影片添加界面;图16.5是 对热点影片的修改界面。
4 9/12 课件 11.3 代 码 展 现 本模块的相关文件有4个,包括一个用户控件 和3个页面,具体如下。
【文件名】RecommendVideos.ascx.cs 【功能模块和目的】热点推荐显示用户控件 【文件名】VideoInfo.aspx.cs 【功能模块和目的】显示影片详细信息 【文件名】ManageVideoTypes.aspx.cs 【功能模块和目的】影片类别管理 【文件名】ManageVideos.aspx.cs 【功能模块和目的】影片信息管理5 9/12 课件 11.3.1 数据访问层 本模块的数据访问层的代码比较简单,里面包括6个 方法,前两个方法GetRecommendVideos和 GetVideoInfo是针对网站前台页面的,其中 GetRecommendVideos是调用存储过程 GetRecommendMovFile从数据表Videos中取出热 点推荐的影片信息保存在一个DataSet中并返回; GetVideoInfo则是调用存储过程GetVideoInfo从数 据表Videos中取出所选影片的详细信息。
SerachVideoTypeData,AddVideoType, UpdateVideoType,DeleteVideoType 4个方法都 是针对网站后台管理系统的,它们提供了对于数据库 中VideoType的搜索、添加、修改和删除操作。
代码11.1 Video.aspx.cs(参见教材P279)6 9/12 课件 11.3.2 业务逻辑层 在业务层文件Video.aspx.cs中并没有很 多的业务逻辑,它提供了4个和数据访问层 同名的方法来提供对于VideoType的搜 索、添加、修改和删除操作,并且对于执 行后的结果进行判断和给与用户提示。
代码11.2 Video.aspx.cs(参见教材 P281)7 9/12 课件 11.3.3 用户界面层 文件RecommendVideos.ascx.cs是一个页面控件, 所以类RecommendVideos 继承自 System.Web.UI.UserControl,但类 RecommendVideos的实现比较简单,里面调用了数 据访问层中的方法GetRecommendVideos返回一个 DataSet,并绑定到一个DataList控件显示在页面 上,不过这里显示的热点影片的信息比较简单,通过 页面文件RecommendVideos.ascx中标记返回每部影片的详细信 息。
8 9/12 课件 11.3.3 用户界面层 代码11.3 RecommendVideos.ascx(参见教材P282) 代码11.4 RecommendVideos.ascx.cs (参见教材 P285) 代码11.5 VideoInfo.aspx (参见教材P286) 代码11.6 VideoInfo.aspx.cs(参见教材P288) 代码11.7 ManageVideoTypes.aspx (参见教材P290) 代码11.8 ManageVideoTypes.aspx.cs(参见教材 P292) 代码11.9 ManageVideos.aspx(参见教材P295) 代码11.10 ManageVideos.aspx.cs(参见教材P298)9 9/12 课件 11.4 数据库相关 本模块主要涉及的数据表为 Videos表和VIdeoType表,下面 分别对这两个表进行介绍。
10 9/12 课件 11.4.1 “电影信息Videos”表 表格电影信息的说明:记录上传 电影的基本信息,如表11.1所 示。
参见教材P30511 9/12 课件 11.4.2 “电影类型VideoType” 表 表格电影类型的说明:记录电影类型信息,如武打片、爱情 片等,具体信息如表11.2所示。
默 名 称 代 码 注 释 数据类型 主键 外来键 强制 身份 认 值 电影类型ID videoTypeId int FALSE FALSE TRUE TRUE 电影类型名称 videoTypeName nvarchar100 FALSE FALSE FALSE FALSE 电影类型描述 videoTypeSummary nvarchar1000 FALSE FALSE FALSE FALSE12 9/12 课件 本章涉及的10个存储过程,把对于影片的增删改等操 作都放到了存储过程里面来进行,这样可以提高网站 的效率,下面的代码按顺序列出了这些存储过程并作 了一些简单说明。
代码11.11 GetRecommendMovFile (参见教材P306) 代码11.12 GetVideoInfo (参见教材P307) 代码11.13 GGetVideoType(参见教材P307) 代码11.14 AddVideoType (参见教材P308) 代码11.15 UpdateVideoType(参见教材P308) 代码11.16 DeleteVideoType(参见教材P309) 代码11.17 AddVideo(参见教材P309) 代码11.18 UpdateVideo(参见教材P310) 代码11.19 DeleteVideo(参见教材P311) 代码11.20 UpdateRecommendVideos(参见教材P312)13 9/12 课件 11.5 本 章 小 结 本章需要重点总结的地方有两个,第一比较文件 ManageVideos.aspx.cs和文件 ManageVideoTypes.aspx.cs,除去处理对象的不同,它们 的基本功能甚至所用到的控件都是很类似的,但是比较两者的 代码,差别就较大,ManageVideoTypes.aspx.cs完全应用 了前面所提到的3层架构,而ManageVideos.aspx.cs则把所 有的功能都集中在了代码中,稍微一比较就可以看出孰优孰 劣。
第二个需要总结的地方就是对于存储过程的使用。
虽然这个模 块只有几个页面,但牵扯的存储过程有10个,这样做的目的是 因为这些页面特别是前台页面的访问量比较大,大量使用存储 过程可以把这些压力转移到数据库服务器上,从而提高程序的 效率,也便于以后程序的技术迁移。
14 9/12 课件
上一篇:
*摘要 .线程原理概述 . NET下的多线程编程 .异步编程 .ASP NET多
下一篇:
Teacher''s role and autonomic learning