基于.NET和Ajax的电子商务网站设计与实现
摘要】本文基于ASP.NET和Ajax技术,采用三层架构设计实现了一种电子商务网站,结合网上商店的商务模式,确定了网站的总体结
构和模块功能,完成了网站的设计与开发。
【关键词】ASP.NET;Ajax技术;三层架构
0.引言
电子商务是一种以网络科技为依托的商务形式,这种商务形式正
在全世界范围内发展扩大。
而网上商店作为一种常见的企业对消费者
(Business to Customer,B2C)电子商务的具体形式,在上已经
非常普及。
随着网上商店的快速增长,网上商店的设计和实现技术也
迅速发展,出现了多种较成熟的实现技术,本文采用ASP.NET平台和
Ajax技术来对网站进行设计和开发的。
1.电子商务网站分析与设计
1.1电子商务网站分析
电子商务网站分为两个部分,分别为:网站前台和网站后台。
每个
部分根据功能不同又分为几个子模块,如新闻发布、登陆注册、商品浏
览、购物车、顾客留言板等。
本网站实现的主要功能如下:
(1)新闻发布
将超市内外的新闻信息栏目和业界动态等信息集中起来发布的
一种网站应用程序。
顾客登录网站就能知道此网络超市的一些动态新
闻,比如说一些促销、降价活动、天气情况、商品的动态市场价格等。
(2)登录注册
这个模块实现一个新的客户注册和老的客户登录,这两个功能基
本上每个电子商务网站上都有提供。
(3)商品浏览
实现顾客可以在网络超市中随意浏览商品,商品要根据商品的类
别来进行分类的,用户可以单击每一分类的链接来进入每一分类,查
看其详细信息。
进入每一商品类别之后,商品是根据每个产品的类别
再分类的。
例如进入书的这一大的类别,书又可以分为很多种:小说、
计算机相关的书、管理方面的书等。
(4)购物车
购物车中已有的商品,包括商品名、商品数量、单价、总价以及是
否有库存。
在最后确定订单时,用户可以修改每一个商品的数量,更新
购物车。
但是一旦单击了结账生成订单,购物车就不能修改了。
(5)顾客留言板
客户反馈是网站与访客进行交互的基本应用。
1.2网站实体设计
在网络超市中有以下业务实体:用户、具体商品、商品系列、商品
类别、订单、订单项、购物车和购物车中的具体商品。
即:
①用户:代表一个用户实体,主要包括用户的详细信息,如用户
名、密码等。
②具体商品:代表每一个具体的商品信息,包括商品的名字价格
等。
③商品系类:代表一系类商品,如计算机类书籍。
④商品类别:代表一类商品,如书是一类,饮料是一类。
⑤订单:代表用户的订单,主要包括用户信息、订单名、具体内容
等。
⑥订单项:代表订单中具体项,一个订单项包括一个商品的购买
情况。
⑦购物车:代表用户的购物车,是一个虚拟的概念。
⑧购物车中的具体商品:代表没一个具体的购物项。
这些实体之间的关系如图1所示。
1.3数据库设计
本网站采用关系型数据库SQL Server 2000作为后台数据库,共
有8个数据表,分别为:用户表,订单表,商品类别表,商品系列表,具
体商品表,订单项表,新闻管理表以及论坛管理表。
以具体商品表为
1.4网站结构的设计
在网站的开发过程中,采用微软最新的.NET三层架构设计,即将
网站分为页面表示层,业务逻辑层和数据访问层。
页面表示层是最外
层,用于显示数据,实现用户与网站的交互。
业务逻辑层是中间层,主
要处理表示层的输入或调用数据层返回的数据结果。
数据访问层是整
个网站的最底层,是对后台数据库中的数据进行查询,修改,删除等操
作管理。
三层架构层次分明,层与层之间不能跨越,提高了程序的可维
护性和可扩展性,是目前应用最广泛的一种软件设计方式。
2.网站开发的关键技术
2.1 ADO.NET数据库访问技术
本网站采用三层架构设计,通过中间层的ADO.NET提供对数据
库的访问服务,保证每个用户都能及时正确的连接到有限资源的数据
库,并且按用户希望的那样保持用户连接的打开状态。
方法是保持少
数几个立即可用的已打开的物理网络连接,把当前不使用的物理网络
连接传递给请求打开数据库连接的请求方。
这样就可以满足众多用户
对数据库的并发操作,避免其它用户在数据库物理网络连接接近饱和
的情况下不能访问数据库。
2.2 ASP.NET AJAX技术
Ajax的英文全称为Asynchronous JavaScript and XML,即异步
JavaScript和XML技术。
传统的Web应用是当用户向Web服务器发
送一个请求时,服务器接受并处理传来的请求,然后返回一个新的页
面。
这个做法浪费了许多带宽,因为在前后两个页面中的大部分
HTML代码往往是相同的,浪费了服务器的响应时间。
而Ajax应用仅向服务器发送并取回必需的数据,它使用基于
XML的Web Services接口,并在客户端采用JavaScript处理来自服务
器的响应。
具体做法:在网站下的系统配置文件web.config中先添加相应的配置代码,然后在用户层
的前台页面中加入ScriptManager控件来显式地标明该页面使用地是
ASP.NET AJAX框架,最后利用UpdatePanel控件来实现页面的局部
刷新技术,将需要刷新的页面内容加入本控件内。
这样当每次浏览器
向服务器发出请求之后,只有该页面内的部分才会被刷新,代替了以
往整个页面都需要回调来获取请求的回调方式,大大提高了服务器的
响应时间。
3.网站的具体实现
网站以登陆子功能为例,它较网站注册容易一些,它只需要验证
用户提交的信息和数据库的信息是否一致。
当用户已经拥有一个账
号,就可以进行登录。
当用户登录网站首页时,可以点击登陆链接进行
登录。
如果登录成功,则返回到网站的首页。
用户成功登录后,在网站
系统的右上角有一个链接,单击进入可以修改个人信息。
4.结束语
本文采用最新的ADO.NET和Ajax页面无刷新技术,设计和开发
了一种电子商务网站系统,并经过测试,达到了预期的效果。
同时,网
站采用的三层架构模型使得程序设计更加清晰,为以后网站的升级和
维护带来了很大的方便。
【参考文献】
[1]陈冠军.精通ASP.NET 2.0企业级项目开发[M].北京:人民邮电出版社,
2007.
[2]Sahil Malik著,汤涛,邰晓翠译.ADO.NET 2.0高级程序设计[M].北京:人
民邮电出版社,2007.
[3]陈冠军.ASP.NET 2.0 Ajax-Web开发技术详解[M].北京:人民邮电出版社,
2007.
tmhhost怎么样?tmhhost正在搞暑假大促销活动,全部是高端线路VPS,现在直接季付8折优惠,活动截止时间是8月31日。可选机房及线路有美国洛杉矶cn2 gia+200G高防、洛杉矶三网CN2 GIA、洛杉矶CERA机房CN2 GIA,日本软银(100M带宽)、香港BGP直连200M带宽、香港三网CN2 GIA、韩国双向CN2。点击进入:tmhhost官方网站地址tmhhost优惠码:Tm...
易探云怎么样?易探云是国内一家云计算服务商家,致力香港服务器、国内外服务器租用及托管等互联网业务,目前主要地区为运作香港BGP、香港CN2、广东、北京、深圳等地区。目前,易探云推出深圳或北京地区的适合挂机和建站的云服务器,国内挂机宝云服务器(可选深圳或北京地区),独立ip;2核2G5M挂机云服务器仅330元/年起!点击进入:易探云官方网站地址易探云国内挂机宝云服务器推荐:1、国内入门型挂机云服务器...
今天CloudCone发布了最新的消息,推送了几款特价独立服务器/杜甫产品,美国洛杉矶MC机房,分配100Mbps带宽不限流量,可以选择G口限制流量计划方案,存储分配的比较大,选择HDD硬盘的话2TB起,MC机房到大陆地区线路还不错,有需要美国特价独立服务器的朋友可以关注一下。CloudCone怎么样?CloudCone服务器好不好?CloudCone值不值得购买?CloudCone是一家成立于2...