基于net的网上购物系统.doc_第1页
基于net的网上购物系统.doc_第2页
基于net的网上购物系统.doc_第3页
基于net的网上购物系统.doc_第4页
基于net的网上购物系统.doc_第5页
免费预览已结束,剩余30页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

分类号 :TP311 单位代码:10452 临 沂 大 学 学士学位毕业设计(论文 ) 基于 .NET 的网上购物系统的设计与实 现 姓 名 孟 广 阳 学 号 200812860102 年 级 2008 级 专 业 软 件 工 程 系(院) 信 息 学 院 指导教师 姚 晓 玲 2012 年 04 月 2012届届 THE DESIGN AND REALIZATION OF ONLINE SHOPPING SYSTEM BASED ON .NET by Meng Guangyang Supervisor: Yao Xiaoling April 2012 诚诚 信信 声声 明明 本人呈交给临沂师范学院的这篇毕业论文,除了所注参考文献和世所公 认的文献外,全部是本人在指导老师指导下的设计成果。 学生签名: 日 期: 经检查该毕业设计(论文)为独立完成,不存在抄袭现象。 指导老师签名: 日 期: 基于.NET 的网上购物系统的设计与实现 摘摘 要要 高速发展的互联网技术为网上购物系统的发展提供了强大的动力,同时,网上购物 的环境已经逐步得到了改善。网上购物已在人们生活中占有重要的地位,针对这种情况, 设计开发了网上购物网站。 在网上购物系统中,顾客能够方便的进行用户注册,查看商品,浏览商品,并购物 车管理,以及订单管理。管理员可以对商品的信息进行维护与管理,包括对现有商品信 息的修改、新商品信息的加入、过时商品信息的删除等;管理员还可以查看历史订单的 记录和现在订单的情况。 本设计以 Microsoft Visual Studio 2005 为开发环境,采用当前比较流行的 C#编程语言 进行编码,数据库采用的是 Microsoft SQL Server 2000。 关键词:关键词:网上购物;商品;订单; 基于.NET 的网上购物系统的设计与实现 Abstract Online Shopping systems are very powerful with the fast development of Internet, at the same time; the environment of shopping online has improved step by step. Online shopping has to occupy an important place in our life, for this case, I design and develop this online shopping site. This web shopping system is very convenient for customers to register, browse merchandise, shopping cart management and order management. The customer can check the process of his/her order. The administrator of this system can maintain and manage all products information, including updating the information, adding new products to system and deleting unfashionable products from system. The administrator also can view all history orders and the situation of all new orders. This online shopping system is based on Microsoft Visual Studio 2005 by C# programming language and Microsoft SQL Server 2000 database. Key Words: Shopping online; Product; Order; 基于.NET 的网上购物系统的设计与实现 目目 录录 前言- - 1 第 1 章 需求分析- 2 1.1 课题背景- - 3 1.2 可行性分析- - 3 1.2.1 技术可行性分析-3 1.2.2 经济可行性分析-3 1.2.3 操作可行性分析-3 1.3 系统需求分析- - 4 1.3.1 顾客对于系统的需求- 4 第 2 章 相关理论基础- 5 2.1 ASP.NET 技术- 5 2.1.1 ASP.NET 简介- 5 2.1.2 ASP.NET 的优点- 5 2.1.3 ASP.NET 的工作原理- 5 2.2 数据库原理-6 2.2.1 SQL 语言简介- 7 2.2.2 MICROSOFT SQL SERVER 简介-7 第 3 章 系统总体设计- 8 3.1.1 前台设计方案- 基于.NET 的网上购物系统的设计与实现 8 3.2.1 数据库表的定义- 11 3.2.2 数据库表的设计- 11 第 4 章 系统详细设计- 14 4.1 前台功能模块的具体实现- - 14 4.1.1 系统首页- 14 4.1.2 商品管理- 15 4.1.3 购物车- 16 4.1.4 订单管理- 17 4.1.5 用户管理- 18 4.1.6 用户控件- 19 4.2 后台功能模块的具体实现- - 20 4.2.1 商品管理- - 20 4.2.2 订单管理- 21 4.2.3 用户管理- 22 第 5 章 测试与发布- 23 5.1 前台测试与分析- - 23 5.2 后台测试与分析- - 24 基于.NET 的网上购物系统的设计与实现 5.3 系统发布- 25 基于.NET 的网上购物系统的设计与实现 1 前前 言言 互联网的快速发展为网上购物系统的发展提供了强大的动力,随着网上购物环境逐 步的改善,表现在网民结构的大众化,物流和银行结算的畅通,以及市场运作的规范和 相应政策法规的完善。网上购物已经成为现在一种流行的购物方式,网上购物的观念已 深入人心。 本购物网站是一个包括管理员模块和普通用户模块的网上购物系统,用户登录网站 后可以浏览商品信息,并且可以注册为本网站会员;会员可以在线查询商品信息,将满 意的商品放入购物车方便统一付款,用户可以通过订单管理来了解购买商品的状态;管 理员登录网站系统后,进入后台管理,可以维护会员和商品信息,同时可以删除用户信 息,进行数据库的备份等操作。 网站是在软件工程思想指导下,通过需求分析,利用.NET 设计后才实现的。论文对 购物网站的实现给出了完整的介绍,全文一共分为五章。第一章为需求分析;第二章为 相关理论基础;第三章为系统总体设计;第四章为系统详细设计;第五章为测试与发布; 基于.NET 的网上购物系统的设计与实现 2 第第 1 1 章章 需求分析需求分析 1.11.1 课题背景课题背景 近年来,随着 Internet 的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并 逐步进入传统的流通领域。于是电子商务开始流行起来,越来越多的商家在网上建起在 线商店,向消费者展示出一种新颖的购物理念。网上购物系统是一种具有交互功能的商 业信息系统。它向用户提供静态和动态两类信息资源。所谓静态信息是指那些不会经常 变动或更新的资源,如公司简介、管理规范和公司制度等等;动态信息是指随时变化的 信息,如产品报价,产品更新等。网上购物系统具有强大的交互功能,可使商家和用户 方便的传递信息,完成电子交易。在现实生活中,网上购物已经成为现代人的一种需求, 它的方便快捷是传统购物方式无法比拟的。 1.21.2 可行性分析可行性分析 .1 技术可行性分析技术可行性分析 一个系统在技术上是否可行,往往从开发的风险,资源的有效性,相关技术的发展 等方面来分析。开发风险的大小直接关系到系统的成败。本系统的实现从其所需要实现 的功能上来说,现有的比较成熟的技术已基本上能满足其功能需求,而且有很多当前已成 功开发并投入使用的网上购物系统可供借鉴。因此,从系统的开发风险来分析,本系统 的开发是可行的。在本系统的开发过程中,主要用到开发工具有 Visual Studio 2005、SQL Server 2000、Dreamweaver 8 等。这些技术和开发工具都是完善,在实践中多次被运用的, 是完全可行的,不会存在技术上的问题。所以从技术环节上来说不存在无法实现的情况 发生。 .2 经济可行性分析经济可行性分析 在本网上购物网站进行购物时,服务器端和用户端的硬件系统可使用现有网络系统, 基本无需另外购置硬件设备,同时系统使用后可以产生一定的经济和社会效益,因此从 经济上是完全可行的。 .3 操作可行性分析操作可行性分析 该网上购物网站的主要使用对象是广大网民,由于网民已经具备一定的计算机的基 础操作知识和经验,对浏览器和 Windows 操作环境下的软件使用比较熟悉,因此网民使 用本系统是非常方便的。 基于.NET 的网上购物系统的设计与实现 3 1.31.3 系统需求分析系统需求分析 .1 顾客对于系统的需求顾客对于系统的需求 顾客在网上购物看重的是方便和快捷,因此系统要使顾客能够在大量的产品信息中 迅速搜索到自己想要了解的产品信息。并且,由于顾客中可能存在有很多并不熟悉网上 购物流程的人,系统操作流程应该简单、易用。 顾客功能需求有: 1.顾客可浏览、检索商城各种商品的基本信息,如:商品实物图片和价格。 2.会员选好商品后,顾客可以将所选商品放入购物车。 3.会员在结算前改变主意,依然可以不用购买。 4.会员选定所要购买的商品后,系统自动生成相应的定单号。 5.顾客可以注册成会员,来购买商品。 .2 管理员对于系统的需求管理员对于系统的需求 系统管理员在此系统中扮演着非常重要的角色,管理员能够轻松的找到需要的管理 类别。为了实现这些需求,管理中心应该做到功能齐全,模块划分明确。本系统中管理 部分分为用户管理、订单管理、商品管理这三个模块 管理员的功能需求有: 1.管理员进行商品管理,如:更新商品、删除过期商品等。 2.管理员进行订单管理。 3.管理员注册用户管理,如:更新完善用户个人信息等。 4.管理员对网站进行维护。 基于.NET 的网上购物系统的设计与实现 4 第第 2 2 章章 相关理论基础相关理论基础 2.12.1 ASP.NETASP.NET 技术技术 .1 ASP.NETASP.NET 简介简介 ASP.NET 技术是 Microsoft 公司推出的新一代动态 Web 开发工具,是电子商务、电 子政务、远程教育等 Web 应用开发的主流技术之一。ASP.NET 不同于 ASP,它是建立在. NET Framework 之上,提供了更易于编写且结构更清晰的代码,它使用 VB.NET 和 C#等 模块化语言编写程序,提高了代码的再利用性和共享性。ASP.NET 在结构上几乎完全基 于组件和模块化的,Web 应用程序的开发人员使用这个开发环境可以实现更加模块化的、 功能更强大的应用程序。 .2 ASP.NETASP.NET 的优点的优点 ASP.NET 的优点主要体现在效率高、可重用性高、代码量少这三方面。在使用 ASP 进行程序设计的时候,由于 ASP 使用的是脚本语言,所有的代码都嵌入到 HTML 代码中, 所以当编制功能复杂的网页时,就需要编写大量的代码,而且会导致程序代码的可读性 差的问题。另外,由于所有的代码都是解释执行的,所以相对速度较慢,并且无法有效 地利用机器硬件的各种性能。ASP.NET 与 ASP 相比较效率更高,提供了很高的可重用性, 对于实现同样功能的程序,ASP.NET 使用的代码量比 ASP 要少得多。ASP.NET 采用全新 的编程环境,代表了技术发展的主流方向。 .3 ASP.NETASP.NET 的工作原理的工作原理 要详细了解 ASP.NET 的工作原理,首先要了解什么是.NET,什么是.NET Framework,什么是公共中间语言。 1. .NET 对于.NET,微软自己也没有一个详细确切的定义。但是我们可以这样认为:.NET 是 微软公司要提供的一系列产品的总称。具体说来,.NET 由下面的几个部分组成:.NET 战 略、.NET Framework、.NET 企业服务器和.NET 开发工具。.NET 战略是指把所有的设备 通过 Internet 连接在一起并把所有的软件作为这个网络所提供的服务的想法。.NET Framework 是一个程序设计环境,它提供了具体的服务和技术,方便开发人员建立相应的 应用程序。.NET 企业服务器是指 SQL Server 2000 之类由.NET Framework 应用程序使用 的服务器端产品。它们虽然不是由.NET Framework 编写成的,但是它们都支持.NET。 为了能够在.NET Framework 上进行程序开发,微软把 Visual Studio 进行升级,并把 升级后的产品命名为 Visual Studio.NET。这就是.NET 开发工具。 2. .NET Framework 基于.NET 的网上购物系统的设计与实现 5 .NET Framework 是.NET 战略的核心。.NET Framework 分为以下几个部分:MS 中间 语言、CLR、.NET Framework 类库、.NET 语言、ASP.NET 和 Web 服务。 MS 中间语言是.NET 的通用语言。无论使用哪一种.NET 语言编写的程序代码,在执 行之前,都会把它编译成为 MS 中间语言。 CLR(Common Language Runtime,公共语言运行时刻库)用于执行 MS 中间语言。 .NET Framework 类库中包含了大量可以实现重要功能的代码库。用户在编写程序的 时候可以很方便地把这些库调用到应用程序中,实现更加复杂的功能。由于这些类库的 存在,使得编写功能强大的程序更加容易。 .NET 语言是指可以将使用其编写的代码编译成为 MS 中间语言的的编程语言。常见 的语言有 VB.NET 和 C#等。 Web 服务是指可以通过 Web 访问的组件。 3. 公共中间语言 在.NET Framework 中使用高级语言(例如 VB.NET、C#)编写的程序,需要在运行前将 其编译成为中间语言(例如 MS 中间语言)。需要注意的是,中间语言并不是一种可以直接 执行的机器代码。与高级语言编写的代码相比,它的可读性很差,但是进行了一系列的 优化。 为了执行中间语言,需要一个执行环境 CLR。CLR 在.NET Framework 中的位置十分 重要,可以说是.NET Framework 的基础。CLR 用 JIT(Just-In-Time)编译器把中间语言代码 编译成可以执行的代码,并对程序进行最后的、与机器相匹配的优化,使得程序可以在 所在计算机上尽可能高效地运行。 采用这种方式的原因是,早期的编译方式是把程序源代码直接编译成机器代码。这 时编译好的程序虽然也进行了与机器相匹配的优化,但是这些优化都是针对编译源代码 的机器进行的。如果把编译好的程序放到其他类型的机器上,那么所进行的优化就有可 能没有任何意义,并且如果机器的硬件发生变化,那么还有编译后的程序无法执行的可 能,因为新的机器可能没有原来机器所拥有的某种资源。而如果采用了公共中间语言的 方式,就可以很好地解决这个问题。由于中间语言与机器无关,所以它可以在任何一个 可以运行 CLR 的机器上运行。并且由于所有的关于机器的优化都是由 CLR 进行的,所以 不存在早期编译所产生的由于机器不同而产生的不兼容的问题。 ASP.NET 的工作原理是:首先,有一个 HTTP 请求发送到 Web 服务器要求访问一个 Web 网页。Web 服务器通过分析客户的 HTTP 请求来定位所请求网页的位置。如果所请 求的网页的文件名的后缀是 aspx,那么就把这个文件传送到 aspnet_isapi.dll 进行处理,由 aspnet_isapi.dll 把 ASP.NET 代码提交给 CLR。如果以前没有执行过这个程序,那么就由 CLR 编译并执行,得到纯 HTML 结果;如果已经执行过这个程序,那么就直接执行编译 好的程序并得到纯 HTML 结果。最后把这些纯 HTML 结果传回浏览器作为 HTTP 响应。 浏览器收到这个响应之后,就可以显示 Web 网页。 基于.NET 的网上购物系统的设计与实现 6 2.22.2 数据库原理数据库原理 .1 SQLSQL 语言简介语言简介 SQL 是英文 Structured Query Language 的缩写,意思为结构化查询语言。 SQL 语言的主要功能就是同各种数据库建立联系,进行沟通。按照 ANSI(美国国家 标准协会)的规定,SQL 被作为关系型数据库管理系统的标准语言。SQL 语句可以用来 执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。 目前,绝大多数流行的关系型数据库管理系统,如 Oracle、Sybase、Microsoft SQL Server、Access 等都采用了 SQL 语言标准。虽然很多数据库都对 SQL 语句进行了再开发 和扩展,但是包括 Select、Insert、Update、Delete、Create 以及 Drop 在内的标准的 SQL 命令仍然可以被用来完成几乎所有的数据库操作。 在众多的 SQL 命令中,select 语句应该算是使用最频繁的。select 语句主要被用来对 数据库进行查询并返回符合用户查询标准的结果数据。select 语句中位于 select 关键词之 后的列名用来决定哪些列将作为查询结果返回。用户可以按照自己的需要选择任意列, 还可以使用通配符“*”来设定返回表格中的所有列。select 语句中位于 from 关键词之后 的表格名称用来决定将要进行查询操作的目标表格。 除了上面所提到的运算符外,LIKE 运算符在 where 条件从句中也非常重要。LIKE 运算符的功能非常强大,通过使用 LIKE 运算符可以设定只选择与用户规定格式相同的记 录。 .2 MicrosoftMicrosoft SQLSQL ServerServer 简介简介 SQL Server 2000 是建立在 SQL Server 7.0 在可伸缩性、可用性、可管理性和数据仓 库成功的基础上,并且引入了针对电子商务的重要新功能。 在高性能和企业级可伸缩性领域,SQL Server 2000 设计成利用 Windows2000 对更 多处理器、更大的系统内存的支持,最终达到支持 64 位硬件平台。 在不断提升可用性的努力过程中,SQL Server 2000 采用 Windows 2000 四路群集, 提供了大大改进的群集支持。SQL Server 7.0 已经在可管理性和易用性方面在行业内领先, SQL Server 2000 通过与 Windows 2000 活动目录紧密结合进一步改进了这些功能。而且, SQL Server 2000 还包含对现有管理工具和实用程序的重大改进,并引入更具自我调节和 自我管理的引擎功能。 SQL Server 2000 按照设计可以为部署和维护强大的、易于管理、支持商务活动的 Web 站点提供最好的性能,这些站点可以从事商家和商家之间或商家与客户之间的交易。 在寻求一个支持您的电子商务解决方案的数据库时,需要考虑的项目包括:可用性、性 能、可管理性和价格。 基于.NET 的网上购物系统的设计与实现 7 第第 3 3 章章 系统总体设计系统总体设计 3.13.1 系统总体设计方案系统总体设计方案 .1 前台设计方案前台设计方案 网上购物系统前台 系统首页 商品管理 购物车 订单管理 用户管理 用户控件 图 3-1 网上购物系统前台功能模块图 根据功能的要求,系统的前台功能模式如图 3-1 所示,各模块的具体的功能如下: 1. 系统首页 提供用户登录、注册,管理员登录以及产品中心的接口,提供简单快捷的商品查询, 并且能够显示当前最新的商品和当前销量最好的商品。 2. 商品管理 允许顾客浏览商品列表,查看所有商品类别以及商品的详细信息。 3. 购物车 在已注册 ID 的情况下,登录的顾客可以将自己满意的商品加入到购物车中,并且能 够查看购物车的内容,在最终结算以前,允许顾客删除商品或更改购买数量,确认无误 以后可以结算生成相应的定单。 4. 订单管理 当顾客确定购买以后,系统会自动为此定单生成其唯一的定单号,并且支持顾客查 看此定单的详细信息,包括所有购买商品的列表以及分别对应的单价和总额,并且登录 的顾客可以查看其当前定单的状态以及在本网上购物系统中所有历史定单信息。 5. 用户管理 本系统不支持匿名购买商品,顾客要购物的话必须注册相应的 ID,因此主要功能为 支持用户注册,同时也支持用户修改其基本信息,包括修改登录密码。 6. 用户控件 基于.NET 的网上购物系统的设计与实现 8 显示本网上购物系统的顶端图片以及一些友情链接和版权信息,使本系统更加美观、 更加符合当前网站主流样式。 .2 后台管理设计方案后台管理设计方案 网上购物系统后台管理 商品管理 订单管理 用户管理 图 3-2 网上购物系统后台功能模块图 系统的后台功能模式如图 3-2 所示,各模块的具体的功能如下: 1. 商品管理 系统管理员可以通过管理中心向系统加入新商品以及其相关信息,删除过期商品, 更新现有商品信息。 2. 订单管理 当顾客确定购买以后,系统会自动为此定单生成其唯一的定单号,系统管理员可以 查看当前未处理的定单的信息,对订单进行处理,并负责与顾客取得联系确认付款方式 以及送货方式等。 3. 用户管理 系统管理员可以对长时间不登录的用户信息进行删除,以确保系统运行正常、有序。 基于.NET 的网上购物系统的设计与实现 9 .3 系统流程图系统流程图 系统运行的流程图如图 3-3 所示。 是否为注 册用户 是否为管 理员 查看所有商品列表 查看商品详细信息 添加到购物车 商 品 管 理 订 单 管 理 用 户 管 理 生成订单 添加、更新、 删除商品 处理订单 状态 用户登录管理员登录 查看、删 除用户 否否 是是 开始开始 结束结束 图 3-3 系统流程图 基于.NET 的网上购物系统的设计与实现 10 3.23.2 数据库设计方案数据库设计方案 .1 数据库表的定义数据库表的定义 根据网上购物系统的功能要求以及功能模块的划分,数据需要存储的信息如下: 1. 系统中所有注册用户的资料:用户 ID,密码,地址,EMAIL 地址,联系电话等。 2. 商品的资料:商品名称,商品类别,商品单价,商品详细信息,商品图片等。 3. 购物车的资料:购物车 ID,购买的商品,购买商品的数量,总价等。 4. 订单的资料:下订单的用户 ID,下订单的时间,购买的商品,购买商品的单价, 购买商品的数量,总价,订单状态等。 .2 数据库表的设计数据库表的设计 分别建立以下的表以满足需要: 1. 用户表,用来记录购物人员的相关注册信息,详细信息见表 3-1。 2. 产品表,用来记录产品的相关信息,详细信息见表 3-2. 3. 购物车表,用来记录用户添加产品到购物车的相关信息,详细信息见表 3-3。 4. 订单表,用来记录用户购物之后生成订单的相关信息,详细信息见表 3-4。 5. 产品种类表,用来记录产品种类的相关信息,详细信息见表 3-5。 6. 地点表,用来记录省份和城市的相关信息,详细信息见表 3-6。 表 3-1 shopper 字段名数据类型长度是否允许为空字段描述 shopperIDchar10 否用户 ID(主键) pssswordchar10 否密码 familynamevarchar20 否姓 givennamevarchar20 否名 emailvarchar40 否电子邮件地址 addressvarchar50 否通讯地址 countrychar15 否国家 provincechar15 否省份 citychar15 否城市 postalcodechar10 否邮政编码 phonechar15 否联系电话 基于.NET 的网上购物系统的设计与实现 11 表 3-2 product 字段名数据类型长度是否允许为 空 字段描述 productIDint4 否产品 ID(主键) productnamenvarchar50 是产品名称 productdescriptionnvarchar4000 是产品描述 originalpricemoney8 否 市场价 salepricemoney8 否会员价 categoryIDint4 否产品种类 ID productnumberint4 是产品数量 photonvarchar50 是图片 publishyearvarchar4 是发布年 publishmonthvarchar2 是发布月 表 3-3 shoppingcart 字段名数据类型长度是否允许为空字段描述 cartIDint4 否购物车 ID(主键) productIDint4 否产品 ID(主键) productquanti ty int4 否产品数量 shoppingdatedatetime8 否 购买时间 表 3-4 orders 字段名数据类型长度是否允许为空字段描述 orderNosmallint2 否订单号(主键) orderdatedatetime8 是订单时间 cartIDnvarchar10 否购物车 ID shopperIDvarchar10 否 用户 ID shippingchargemoney8 是运费 ordrprocesschar1 是订单状态 totalcostmoney8 是总价 表 3-5 category 字段名数据类型长度是否允许为 空 字段描述 categoryIDint4 否产品种类 ID (主键) categorynamenvarchar50 否产品名称 表 3-6 place 字段名数据类 型 长度是否允许为空字段描述 citychar15 否城市(主键) provincechar15 否省份 基于.NET 的网上购物系统的设计与实现 12 第第 4 4 章章 系统详细实现系统详细实现 4.14.1 前台功能模块的具体实现前台功能模块的具体实现 .1 系统首页系统首页 此功能模块由 default.aspx 来实现,并提供了本系统绝大多数功能的入口,例如:会 员注册、登录,管理员登录,商品查询,最新商品,热销商品等。 会员登录主要是将用户输入的用户名和密码与数据库中 shopper 表中的已有的信息进 行比对,如果完全一样,则是合法用户,可以成功登录,如果不一样,则登录失败。 查询功能是通过两个下拉列表来实现的,为了避免用户自己输入出现错误导致无法 查询到自己要看到的内容,该查询功能就没有使用用户输入的方式来进行关键字查询, 而是通过先选择第一个下拉列表来确定 categoryID(产品种类 ID) ,然后通过这个 categoryID 从数据库的 product 表中读出所有 categoryID 相同的产品型号显示在第二个下 拉列表中,此时,用户就可以选择想要查看的具体产品的型号,再点击“查询”即可看 到相应产品的详细信息,如图 4-1 所示。 图 4-1 网上购物系统首页图 在此页面上,最新商品和热销商品的所有信息都是通过 DataList 这个功能强大的的控 件实现的, “最新商品”使用 DataList1,通过在管理员添加新产品到系统中时所添加的产 品的发布年、月来排序,代码如下: select top 6 product.originalprice,product.saleprice,product.photo,productID from product order by publishyear,publishmonth desc 热销商品使用 DataList2,通过计算 shoppingcart 表中购买的数量从而来确定产品的销 基于.NET 的网上购物系统的设计与实现 13 售量的多少来进行排序,代码如下: select originalprice,saleprice,photo,productID from product where productID in (select top 6 productID from shoppingcart group by productID order by sum(productquantity) desc) .2 商品管理商品管理 此功能模块由product.aspx,productList.aspx,productdetail.aspx来实现。 当用户进入产品中心以后,通过 DataList 这个控件,显示出相应产品类别的产品图片 及一些相关信息,其中包含产品名称,产品类别以及相应的价格信息等,整个页面的左 边部分,分类列出了各类产品,每一类产品都有自己唯一对应的 categoryID,同时, categoryID 在 product 表里都有相对应的产品名,当点击某个产品种类时,所有对应该种 类 categoryID 的产品都会从数据库中提取出来并且显示在页面上,这样起到了导航的作 用,一目了然,方便用户能够比较迅速找到自己想要的产品,如图 4-2 所示。 图 4-2 产品中心图 所有产品的图片都是管理员在添加新产品到系统中时,上传到 images 这个目录下的 图片的名字和产品的型号相同,通过下面的代码来获得: (Image)e.Item.FindControl(photo).ImageUrl = images + MyDataRowView.Row4.ToString(); 另外,通过点击“详细信息”就可查看该商品的具体资料,用户可以看到产品名称, 产品价格,以及详细描述,是在 product 表中通过相应的 productID(产品 ID)读出其相关信 息的,通过下面的语句实现: select productname,productdescription,cast(saleprice as nvarchar)as price from product where productID= + productID + , conn .3 购物车购物车 此功能模块由 cart.aspx,shoppingcart.aspx 来实现。 当用户查看了相关商品的详细信息以后,如果愿意购买并且是在用户已经登录的情 基于.NET 的网上购物系统的设计与实现 14 况下,可以在下拉列表中选择购买商品的数量并点击“添加到购物车”加入到购物车中, 在这个过程中,系统将用户选择的商品所对应的 productID 和购买的数量都写入到数据库 的 shoppingcart 这个表中,并生成唯一的 cartID(购物车 ID) ,一个 cartID 对应用户登录 一次所有购买的商品,也就是说 cartID 和 productID 的对应关系既可以是一对一,也可以 是一对多。最后顾客结束购物时,点击“查看我的购物车” ,则在可以看到相关购物信息, 这就是将 shoppingcart 表中生成的 cartID 所对应的 productID 和购买数量的信息读出并通 过 GridView 这个控件显示出来,如图 4-3 所示。 图 4-3 查看购物车图 用户可以在最终结算前放弃购买某样或多样已放在购物车中的商品,在此时点击 “删除” ,shoppingcart 表中的当前 cartID 所对应的 productID 删除,从而达到放弃购买的 作用。 总计金额是通过计算 GridView 中第 3 列中的小计而得,最后通过一个 Lable 显示出 来,具体实现的代码如下: double totalmoney = 0; double tempprice; for (int i = 0; i GridView1.Rows.Count; i+) tempprice= Convert.ToDouble(GridView1.Rowsi.Cells3.Text.ToString(); totalmoney += tempprice; Label1.Text = totalmoney.ToString(); 如果是未注册用户或未登录用户,则无法购买,系统会有相应提示,并自动转到主 页。 .4 订单管理订单管理 基于.NET 的网上购物系统的设计与实现 15 此功能模块由 order.aspx,orders.aspx 来实现,分别实现生成和显示当前订单以及显 示历史订单的功能,当用户购物完成以后,查看自己的购物车后,并确定购买的时候, 点击“最终结算”可以生成相应的订单,当系统生成订单时,会将 shoppingcart 表中的 cartID,shopperID,totalcost 插入到 orders 表中,代码如下: protected void Button1_Click(object sender, EventArgs e) cartid = Request.CookiescartID.Value.ToString().Trim(); shopperid =Request.CookiesuserName.Value.ToString(); string sql = string.Format(insert into orders(cartID,shopperID,totalcost) values(0,1,convert(money,2),cartid ,+shopperid+ ,Label1 .Text ); databaseAccess.ExeSql(sql); Response.Cookies.Clear(); Response.Redirect(order.aspx); 此外,订单日期是获取当前系统时间并自动写入,而订单号也是在 orders 表中自动 生成,每个唯一的订单号对应唯一的 cartID,所以查看订单详情即是获取订单号与对应 cartID,通过 cartID 在 shoppingcart 表中得到相应的信息,如图 4-4 所示。 图 4-4 查看当前订单图 此外,如果想查看自己所有的订单情况,就可以直接点击“所有订单” ,这样通过 Getorder2 这个函数来获取所有的订单信息,将该用户在本系统中所有的购物订单显示出 来,代码如下: public static DataSet Getorder2(string shopperid) SqlConnection conn = new SqlConnection(connection); 基于.NET 的网上购物系统的设计与实现 16 SqlDataAdapter data = new SqlDataAdapter(select * from orders where shopperID= + shopperid + order by orderdate desc, conn); DataSet ds = new DataSet(); data.Fill(ds); conn.Close(); return ds; .5 用户管理用户管理 此功能模块由 register.aspx,reviseinformation.aspx 来实现,分别用来实现新用户注册 和用户信息修改的功能。 register.aspx实现用户注册功能,主要向shopper表中插入新用户信息,包括用户名、 国家、省份、城市、联系地址、密码、姓、名、电子邮箱、邮政编码、联系电话,在本 系统中用户名不允许重名,因此,系统通过checkUserExist这个函数进行判别,为了确保 用户两次输入相同的密码,用一个if语句进行判别,如果两次输入的密码不相同,则有所 相应提示,如果用户一切填写正确,当点击“确定”以后,会提示用户注册成功,此功 能靠以下代码实现: Response.Write(alert(注册成功); reviseinformation.aspx实现用户修改注册信息的功能,除了ID不能修改,其他信息都 能够修改,用户名是从数据库的shopper表中读出,并通过一个Lable显示出来,当用户更 改了自己的注册信息后,需要向数据库中shopper表的相关信息进行更新,如图4-5所示, 通过以下代码实现: update shopper set psssword=0,email=1,address=2,country=3,province=4 ,city=5,postalcode=6,phone=7 where shopperID=8, TextBox4.Text, TextBox5.Text, TextBox2.Text, TextBox1.Text, DropDownList1.SelectedItem.Value, DropDownList2.SelectedItem.Value, TextBox6.Text, TextBox7.Text, Label1.T

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论