电子商务网站系统 理论
需求分析与结构设计 3
【电子商务平台系统数据库及表设计 】
用户信息表如下:其数据字段如下表所示:
datetime
LoadDate
bit
Sex
char(10)
PostCode
varchar(50)
RealName
varchar(200)
Address
varchar(50)
Password
varchar(50)
Email
varchar(50)
UserName
varchar(20)
Phonecode
int
MemberID
数据类型
字段名
数据类型
字段名
电子商务平台系统 实践
网站主页制作 4
【任务描述】
本电子商务网站首页是服务为宗旨,在商品展示区中看到最新推出的新品排行、热门商品。在“商品分类列表”中可以对商品进行分类浏览查询,并购买所需商品。用户登录后可以发表留言、管理留言。前台首页效果 如下 :
电子商务平台系统 实践
网站主页制作 4
【任务分析】
实现功能
分类显示
商品浏览
会员管理
查看商品的详情
电子商务平台系统 实践
网站主页制作 4
【相关知识与技能】
使用母版页及用户自定义控件,页首、商品导航和页尾设定用户自定义控件。
商品导航及商品品浏览用到数据控件DataList,商品分类数据需要从SecCategoryInfosTable表中读取,商品浏览数据从GoodsTable表中读取。DataList控件中设置模板,使用 CommandArgument 属性来指定补充 CommandName 属性的参数。
电子商务平台系统 实践
网站主页制作 4
【任务实施】
1、在应用程序中新建一个Web窗体,命名为。
在页面中添加一个Table表格控件,从“工具箱”选项卡中拖放1个DataList。
编辑模板,从“工具箱”选项卡中拖放1个LinkButton,其功能是链接到显示商品分类的页面。显示的数据是分类商品的类别。
设置CommandName ="select",右键DataList属性激活DataList1_ItemCommand事件。
此事件中根据传递商品类别SecCategoryID值实现网页跳转,为用Session对象保存这个商品类别。
编辑其属性,将CommandArgument 的绑定设置为Eval("SecCategoryID"),目的是传递SecCategoryID给DataList1_ItemCommand事件中的。获取商品类别名称<%# (, "SecCategoryName") %>
【创建用户自定义控件 】
电子商务平台系统 实践
网站主页制作 4
【任务实施】
2、将Web网页转化为用户控件。具体操作如下:
重命名.aspx文件,使其文件扩展名为.ascx。
根据代码隐藏文件使用的编程语言,重命名代码隐藏文件使其文件扩展名为 .。
打开代码隐蔽文件并将该文件继承的类从Page更改为UserControl。即将语句更改为. UserControl。
在.aspx文件中,执行以下操作。
【创建用户自定义控件 】
电子商务平台系统 实践
网站主页制作 4
【任务实施】
3、从该页面中移除html、body和form元素。
将@Page指令更改为@Control指令。
移除@Control指令中除Language、AutoEventWireup、CodeFile和Inherits之外的所有属性。
在@Control指令中,将CodeFile设置为。
【创建用户自定义控件 】
注:同理制作页头,页尾
电子商务平台系统 实践
网站主页制作 4
【任务实施】
创建母版页,用来封装前台每个页面的页头、页尾和分类导航。
在网站中加入一个母版页。
由于默认的版面布局并不符合我们的需要,要修改其布局。由于默认的ContentPlaceHolder很碍事,故先暂时删除,稍后会重新加入。
插入Table模板作为版面布局,【布局】→选择【插入表】,选择模板“页眉、页脚和边”。
插入新的ContentPlaceHolder控件。由于先前将ContentPlaceHolder删除掉,在此必须将其加回来,因为ContentPlaceHolder是后续网页显示内容的地方。
在“页眉、页脚和边”处分别加入先前做好的用户自定义控件、 和。
【创建母版页 】
电子商务平台系统 实践
网站主页制作 4
【任务实施】
创建母版页,用来封装前台每个页面的页头、页尾和分类导航。
在网站中加入一个母版页。
在ContentPlaceHolder处1个DataList ,作为主页中新品排行的数据显示控件。
在DataList中显示10个图片,右键DataList属性页,设置RepeatColumns为5,一行设定5列。
在主页中需要显示商品图片、商品名和价格。编辑模板,从“工具箱”选项卡中拖放一个表格1列5行,分别放入控件ImageButton(商品图片)、LinkButton(商品名)
两个Lable(市场价和会员价)。再放一个ImageButton,它的ImagUrl属性设为图片,用于购买商品,跳转到购物车页,
【创建前台主页】
电子商务平台系统 实践
网站主页制作 4
【任务实施】
设置商品图片控件ImageButton2 的CommandArgument属性为Eval("goodsID")(表GoodsTable的字段),目的是传递参数GoodsID给DataList1_ItemCommand事件;ImageUrl属性设为Eval("goodsPicture"),用来显示商品图片。
设置商品名称控件LinkButton1,LinkButton1替换为<%#Eval ("goodsname") %>,目的是显示商品的名称。
市场价和热卖价分别加上<%#Eval ("MarketPrice").ToString()%>和<%#Eval("GoodsSellPrice").ToString()%>,目的是显示对应的值。
购买商品跳转到购物车页ImageButton1控件CommandArgument属性为Eval("goodsID")。
【创建前台主页】
电子商务平台系统 实践
网站主页制作 4
【任务小结】
【创建前台代码页】
在Page_Load事件中,自定义方法dlBindPage(),用于显示“新品排行”并分页。
DataList1_ItemCommand事件:
单击商品图片(ImageButton2)查看商品详细信息;
单击“购买”按钮(ImageButton1)去购物车页。
ImageButton2的CommandName定义为“detail”;
ImageButton1的CommandName定义为buy;
在DataList1_ItemCommand事件中,通过来判断单击的是哪个控件执行哪个方法 。
自定义AddressBack方法
一是保存当前页(主页)Session[“address”] = “”,以便在商品详细信息页单击“返回”按钮时,返回到该
二是跳转到商品详细信息,保存商品的ID Session["ID"] =
电子商务平台系统 实践
网站主页制作 4
【任务小结】
【创建前台代码页】
(()),以便商品的详细信息页找到此商品,并传参ID(由Eval("goodsID")给定)。
自定义AddShopCart实现的主要功能是将用户新购买的商品添加到购物车中。在实现过程中,判断用户是否已经有了购物车,如果用户没有,则重新分配一个给用户;如果用户已经有了购物车,则判断该购物车中是否已经有该商品。