《基于ASP.NET的“尚都”购物网的设计与开发-毕业论文.docx》由会员分享,可在线阅读,更多相关《基于ASP.NET的“尚都”购物网的设计与开发-毕业论文.docx(46页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于ASP.NET的“尚都”购物网的设计与开发摘 要当今网络科学技术的快速发展,人们的日常生活和电子商务的关系日益紧密。科技的进步必定会带动经济的发展,其应用和推广将给社会带来极大的效益,与此同时科技的快速发展也表明我们的生活方式也要发生改变。因此一个能够实现在线购物功能的系统的开发将无疑给人们的生活带来更多的方便,也将产生良好的社会效益。在线购物系统极大的方便了人们的生活,使人们能够在繁忙之中完成购物。目前在线购物系统的使用方式为:商家通过网站发布商品的信息,用户通过浏览网站,可以实现购买商品,下订单,删除订单,评价商品等操作。本文概述了购物系统实现的全过程,在实现购物网站的过程中也学习到了
2、许多书本上不能学到的知识,收获颇多。关键词:电子商务;在线购物;ASP.NETDesign and Development of ShangDu Shopping Website based on ASP.NETABSTRACTIn todays world, with the rapid development of network science and technology, Peoples Daily life and the e-commerce increasingly close relationship. The progress of science and technolo
3、gy will lead to the development of economy, its application and popularization will bring great benefits to the society, at the same time the rapid development of science and technology also suggests that will change our way of life. Therefore, to achieve the online shopping feature a development sy
4、stem will undoubtedly give peoples lives more convenient, but also will produce good social benefits.The current online shopping system, the general process for businesses through the website released commodity information, the user through browsing the site, can realize the purchase of goods, delet
5、e order, operations such as evaluation of commodities. Article has basically outlined the shopping system implementation process, in the process of realization of shopping website I also learned a lot of books cant learn knowledge, harvest a lot.Key words: E-Commerce; Online Shopping; ASP.NET目 录1. 绪
6、论11.1 开发背景11.2 系统开发环境的选择11.3 系统数据库环境的选择22.系统分析32.1 问题定义32.2 可行性研究32.2.1 技术可行性322.2 经济可行性32.3 需求分析42.3.1 模块功能需求分析42.3.2数据库需求分析63.系统设计83.1 总体结构设计83.2 系统模块功能设计83.2.1 销售模块功能设计83.2.2 系统管理模块103.3 数据库设计114.系统实现154.1 系统公共类的实现154.2 用户模块实现174.2.1系统登录模块的实现184.2.2 系统注册模块的实现194.2.3 购物袋模块以及购买模块实现214.2.4 商品搜索及筛选模块
7、实现264.2.5 商品支付模块实现284.2.6 订单和购物袋及管理模块实现284.2.7 修改密码模块实现304.2.8 收货人信息管理模块实现304.3 后台管理模块实现315.系统软件测试325.1 测试的方法与步骤325.1.1 测试方法325.1.2 测试步骤325.2 测试用例325.2.1 用户登录的测试325.2.2 管理员登录的测试335.2.3 系统功能测试33结束语34参考文献35致 谢36附 录371. 绪论社会的进步往往离不开科技的发展,如今科技的发展使网络技术的应用更加广泛。电子商务这个词人们渐渐的习以为常。在国内外已经有许多的网上购物系统,诸如淘宝、京东、卓越亚
8、马逊等等。这些购物网站的出现改变了人们的生活习惯,同样提高了人们的生活质量。然而,随着人们生活水平的提高,这些购物网站将渐渐无法满足人们的需求。根据国外某权威结构的调查显示,有很大一部分高收入的人群,他们需要的是一些高品质,上档次的时尚精品1。因此,为了满足这些人群的需求,本购物系统便产生了。本系统的主要特点提供的商品都是国内外著名的大牌公司的商品,所有商品直接由那些大牌公司提供,“尚都”为这些大牌公司提供一个平台可以更好的为消费者服务。所展示的商品都是高品质、高质量、高档次的时尚精品,代表着时尚、高雅、品位。所面向的消费人群是高收入的消费者。这与国内的淘宝,京东商城等是不同,它们为普通消费者
9、提供了一个满足基本购物需求的平台,提供的是普通的消费品,而且商品的质量和品质很难得到保证。“尚都”就能保证做到所售商品为真品和珍品。1.1 开发背景现阶段社会的发展日新月异,与此同时人们对生活也有了更高的要求。近年来,商品的种类越来越丰富可以基本的满足人们的消费需求,但是依然存在许多的问题需要不断的改进。比如,网上大多数商品都是一些价格低廉的商品,也不乏有许多的假货,损害者消费者的利益。现在的网站一般分为几类购物网站,有综合购物,有针对某种产品的购物网站等。它们都为人们的生活带来便利,并不断的满足不同人群的消费需求。针对中高收入的人群的购物网是完全符合人们的消费需求的,对时尚和美的事物的追求也
10、是人的天性2。1.2 系统开发环境的选择本系统是基于ASP.NET开发与设计的,使用了C#作为系统的开发语言同时结合其他工具,实现了系统的功能。结合目前的国内外网站的实例,以及结合本系统的需求特点,使用C#开发本系统为系统的顺利实现提供了很大的帮助。1.3 系统数据库环境的选择本系统采用了SQL Server 2008作为系统的数据库,SQL Server 2008是目前使用较方便,快捷的一种轻量级数据库系统,同时也是使用较熟练的数据库系统。SQL Server 2008的语句操作也是非常方便,选择SQL Server 2008作为系统的数据库,使得开发工程顺利了很多。 2. 系统分析系统分析
11、主要是能在不知到将要发生什么事的情况下,确定问题的原因,找到解决问题的方案。按照软件的开发过程来划分,我们一般划分为软件计划、软件开发、软件运行维护三个阶段组。软件完成并交付用户使用后在软件运行过程中,需要不断地进行维护和更新,才能使软件能够长期的满足用户的需要3。2.1 问题定义 问题的具体任务就是实现购物系统,同时本系统和国内的其他购物网站,比如淘宝、京东等购物网站是属于不同定位的购物系统。“尚都”顾名思义时尚之都,其功能是给高收入人群提供一个更好的购物平台。本系统上提供的商品都是国内外著名的大牌公司的商品,所有商品直接由那些大牌公司提供,“尚都”为这些大牌公司提供一个平台可以更好的为消费
12、者服务。本系统的问题分析具体如下:(1)使用合理的管理方案和规范的审核制度,为用户提供一个安全方便满意的购物环境。购物流程符合人们的购物习惯,注重用户的购物体验。为用户提供放心满意的售后服务,用户的不满意就是该系统的失败。(2)购物系统应方便用户来使用,本系统采用目前较成熟的浏览器和服务器相结合的体系结构,其中浏览器也就是用户使用的网站,负责显示界面信息、访问数据库服务器,而服务器端则用于提供数据服务。(3)系统界面要简洁、精美,购物流程符合以往的网上购物习惯。系统功能要强,为用户提供一个好的的后台支持。同时注意尽可能减少对系统资源的占用。(4)为了便于管理和提高系统的性能,一般系统采用模块化
13、程序设计,模块化设计有许多的优点,同时也便于我们对系统功能的各种组合和修改,而且也可以方便其他的开发技术维护人员更新、维护。2.2 可行性研究2.2.1 技术可行性研究网站的搭建技术已经十分成熟,而且已经被许多的主流公司使用,并且有许多类似的网站运行取得较好的效益,因此系统需要的功能完全可以实现。而且现有的资源可以满足系统的需要,所以技术上是没有什么问题的。2.2.2 经济可行性研究该系统采用目的技术是十分成熟的,而且又许多的类似网站已经开始运行。本系统属于个人自主开发,而且又可以借鉴其他的网站。开发成本低,而且后期的维护也比较容易,因此经济上完全是可行的。总而言之,本系统的开发是可以的。2.
14、3 需求分析2.3.1 模块需求分析网络购物是基于网络平台进行的一种交易模式,在线购物的整个过程都是通过浏览网站进行的,方式比较单一而且又有限制,而且用户不能看到实实在在的商品,对商品的信息的了解途径只能通过上网来进行,而且不乏有虚假信息。根据现有的购物网站,我们知道在线购物的一般流程大致如下:首先,买家更新系统的商品信息,然后用户就可以通过网络进行浏览商品以及购买商品。用户通过注册的账户名登录系统后,可以在网上进行搜索自己喜爱的商品4。销售模块分析:(1)商品信息模块 商品浏览 商品购买 商品搜索 商品评价(2)用户账号管理模块 用户注册 用户登录个人密码的找回(3)进入购物网站模块 加入购
15、物袋 查看订单 删除订单 提交订单及支付销售模块功能图2-1所示:图2-1销售模块功能图系统后台管理模块分析:(1)仓库管理模块 货物分类管理。货物信息管理。商品信息的编辑、删除、查询。(2)库存管理模块 (3)收货人管理模块(4)用户信息管理(5)商品评价管理查看商品评价信息以及对违规的商品评价信息的删除。(6)数据库管理和维护数据库健壮性、稳定性的定期检测以及软件的更新和升级。系统管理模块功能图如下所示:图2-2系统管理模块功能图2.3.2 数据库需求分析用户通过上网可以查看自己的定单等操作,管理员可以更新商品,查看用户信息,订单信息等信息。系统E-R图如图2-3所示:图2-3 系统E-R
16、图3. 系统设计数据库对系统来说是非常重要的,在系统设计这章介绍了本系统的结构框架以及系统的相关表格。3.1 总体结构设计“尚都”购物中心功能结构图如图3-1所示:图3-1功能结构图3.2 系统模块功能设计3.2.1 销售模块详细设计(1)商品的信息模块 只有在登录后,才可以查看商品,在该系统中有两种模式,一种是未注册用户,他们可以进行一些基本的操作,比如商品的浏览、查看但不能进行购买和添加购物袋等功能。另一种是已注册用户,他们除了可以浏览查看之外还可以进行商品的购买,添加到购物袋,查看自己的相关信息。在商品详情页面,显示要查看的商品的详细信息、价格及图片还有就是商品的有关评价信息、商品的属性
17、。通过对商品详细信息的查看,用户可以更加的了解商品,提高用户对商品的满意度。商品购买这个功能主要是针对已注册的用户,可以进行商品的选购及支付操作。用户可以按商品的品牌、颜色、价格进行条件进行商品的搜索。比如按商品的品牌,可以快速的找到自己想要的商品,极大的方便了用户。 用户购买商品并且收到商品后便可以进行商品的评价,发表自己对商品的评价以及相关信息。(2)用户个人信息管理模块 用户需要提供合法的手机号和邮箱地址来注册,可以很方便帮助用户快速注册。同时在注册时提供密保问题,可以帮助用户找回密码等功能。用户注册成功后便可以进行登录操作,在登录界面输入合法的账户名和密码便可以登录该系统。该功能是为了
18、帮助丢失密码的用户,用户输入合法的账户和响应的密保问题便可以找回密码,通过输入新的密码,下次登录的时候通过输入新的密码便可以顺利登录该系统。用户可以更改自己的收货人的信息,而且还可以添加删除等操作。(3)进入购物网站模块 用户在页面点击“添加到购物袋”按钮便可以将商品添加到自己的购物袋里面,方便用户购买。在页面中显示用户自己的所有添加到商品袋信息,并统计用户应付的金额,用户可以进行删除操作,及进行提交订单。用户通过查看自己的订单可以进行管理功能,可以查看自己购买的商品编号、显示的图片、商品名、商品价格、数量、总价,用户支付的金额数。同时可以查看该商品是否已经评价,以及决定是否提进行评价。用户可
19、以删除自己以往的订单。(4)提交订单及支付用户通过点击“立即购买”按钮跳转到商品支付界面,完成收货人信息的选定后,选择支付方式,弹出支付界面,输入账户号和密码,点击“确认支付”便完成了支付。(5)收货人信息编辑界面用户可以更改自己的收货人的信息,而且还可以添加删除等操作。3.2.2 系统管理模块(1)商品信息管理模块 对不同类型的商品进行分类管理,可以方便管理员进行后台的管理和操作。 管理员可以查看商品的属性,以及其他操作。还包括商品信息的编辑、删除商品、更新商品信息、查询商品等。管理员可以实现对商品的添加、删除、更新、查询等操作。(2)数据库健壮性、稳定性的定期检测;对系统的数据库定期进行检
20、测,保证系统的健壮性。(3)软件的更新和升级;根据需要对软件进行更新和升级。3.3 数据库设计数据库对购物网站来说是非常重要的,像一些大的网站他们的数据库都是经过多次的设计,使用非常好的服务器等资源才能保证大量用户的正常使用。限于资源有限等原因,本系统在仔细的分析后最后设计出了符合要求的数据库。本系统的有多个实体,如下所示:(1)管理员信息表结构:表3-1 管理员信息表(tb_AdminInfo)序号字段名称数据类型说明允许空1AdminIDvarchar(50)账号,主键否2Passwordvarchar(50)密码否(2)用户信息表结构:表3-2 用户信息表(tb_User)序号字段名称数
21、据类型说明允许空1UserNamevarchar(50)用户账号,主键否2PassWordvarchar(50)用户密码否3PassWordProtecQuestionvarchar(50)密保问题否4PassWordProtectionAnswervarchar(MAX)密保答案否(3)商品信息表结构:表3-3 商品信息表(tb_ProductInfo) 序号字段名称数据类型说明允许空1ProductIDvarchar2(20)商品号,主键否2Pricevarchar(30)商品价格否3Sizevarchar(50)尺寸否4StockInt商品库存量否5Brandvarchar(50)品牌否
22、6GenderChar(10)适合人群否7Sortvarchar(20)类别否8Smallclassvarchar(20)小类别否9Colorvarchar(50)颜色否10Picturevarchar(150)搜索页显示图片否11Descriptionvarchar(MAX)商品的描述否12StatusProductvarchar(50)库存状态否13Picture01varchar(150)详细页面小图片否14Picture02varchar(150)详细页面小图片否15Picture03varchar(150)详细页面小图片否16Picture04varchar(150)详细页面小图片否
23、17Picture05varchar(150)详细页面小图片否18Picture_mid01varchar(150)详细页面中图片否19Picture_Detai01varchar(150)详细页面大图片否20Picture_Detai02varchar(150)详细页面大图片否21Picture_Detai03varchar(150)详细页面大图片否22Picture_Detai04varchar(150)详细页面大图片否23Picture_Detai05varchar(150)详细页面大图片否(4)订单信息表结构:表3-4 订单信息表(tb_OrderInfo)序号字段名称数据类型说明允许
24、空1OrderNumberint订单号,主键否2ProductIDInt商品ID,外键否3UserNamevarchar(50)用户名否4ReceiveIDInt收货人ID否5Numberint购买数量否6Priceint价格否7TotalPriceint总价否8OrderStatuschar(10)订单状态否9EvaluationStatuschar(10)评价状态否10OrderTimesmalldatetime订单生成时间否(5)收货人信息表结构:表3-5 收货人信息表(tb_ReceiveInfo)序号字段名称数据类型说明允许空1ReceiveIDint收货人ID,主键否2UserNa
25、mevarchar(50)用户名,外键否3Receivervarchar(50)收货人姓名否4WhereAddressvarchar(50)地址否5DetaileAddressvarchar(MAX)详细地址否6PhoneNumbervarchar(50)收货人电话否7TheMailboxvarchar(50)邮箱是(6)购物袋信息表结构:表3-6 购物袋信息表(tb_ShoppingCart_Info)序号字段名称数据类型说明允许空1ShoppingCartIDint购物袋ID,主键否2UserNamevarchar(50)用户名,外键否3CartStatusvarchar(50)商品状态否
26、4ProductIDvarchar(50)商品ID否5Numbervarchar(MAX)数量否6Pricevarchar(50)单击否7TotalPricevarchar(50)总价格否8AddToCartTimesmalldatetime加入购物袋时间否(7)商品评价表结构:表3-7 商品评价表(tb_Evaluate_Info)序号字段名称数据类型说明允许空1ProductIDint商品ID,否2UserNamevarchar(50)用户名否3OrderNumbervarchar(50)订单号否4Evaluate_Infovarchar(MAX)评价信息否5Colorvarchar(50
27、)颜色否6Date_Timesmalldatetime评价时间否7Sizevarchar(50)商品尺寸否4. 系统实现在这章介绍了系统具体的实现过程,其中包括了系统的各个模块的详细的描述。其实系统的实现就是要求系统完成需求。4.1 系统公共类的实现要实现系统的动态运行必须与数据库连接,数据库连接需要一些类。在本系统的文件SqlDbHelper.cs中利用查询数据库返回的值进行相关功能的实现。在此只列出一个功能,其他的类似。public static string ConnectionString get return connString; set connString = value; /
28、 / 执行一个查询,并返回查询结果 / / 要执行的SQL语句 / 要执行的查询语句的类型 / Transact-SQL 语句或存储过程的参数数组/ public static DataTable ExecuteDataTable(string commandText, CommandType commandType, SqlParameter parameters) DataTable data = new DataTable();/实例化DataTable,用于装载查询结果集 using (SqlConnection connection = new SqlConnection(connS
29、tring) using (SqlCommand command = new SqlCommand(commandText, connection) command.CommandType = commandType;/设置command的CommandType为指定的CommandType /如果同时传入了参数,则添加这些参数 if (parameters != null) foreach (SqlParameter parameter in parameters) command.Parameters.Add(parameter); /通过包含查询SQL的SqlCommand实例来实例化S
30、qlDataAdapter SqlDataAdapter adapter = new SqlDataAdapter(command); adapter.Fill(data);/填充DataTable return data; 在文件web.config数据源配置如下代码: 在页面的.aspx.cs页面进行引用。 protected void btnSearch_Click(object sender, EventArgs e)/输入查询 string SQL = ; if (txtSearch.Text.Trim() = ) /什么也不做 txtSearch.Text = ; Response
31、.Write(alert(抱歉您没有输入信息,请输入!);); else if (txtSearch.Text.Trim() != ) Sort0 = txtSearch.Text.Trim(); SQL = string.Format(SELECT Brand,Sort,Smallclass FROM tb_ProductInfo WHERE Brand=0 or Sort=1or Smallclass=2 , Sort0, Sort0, Sort0); object result = SqlDbHelper.ExecuteScalar(SQL); if (result != null) /
32、在数据库中查找到。 string s_url; s_url = SD_loginSearchView.aspx?sort= + Sort0; Response.Redirect(s_url); else Response.Write(alert(抱歉没有找到,按类型,品牌试试吧!);); txtSearch.Text = ; txtSearch.Focus(); txtSearch.Text = ; 4.2 用户模块实现4.2.1系统登录模块的实现用户登录模块,使用asp:TextBox实现用户信息的输入功能,利用asp:Button实现事件的触发功能,进入后台根据用户输入的数据进行判断是否合
33、法。输入页面的信息使用RegularExpressionValidator和RequiredFieldValidator。网站登录页面如图4-1所示:图4-1 登录页面4.2.2 系统注册模块的实现该模块的实现和登录模块有些相似。首先进行用户账号的验证是否合法有效,然后判断用户输入两次的密码是否一致,以及回答密保问题,点击“同意用户协议并注册”按钮后,后台并进行数据的验证,首先验证该账号是否已经被注册,如果已经注册,返回相应信息。如果用户账号没有被注册并且合法,系统便将用户信息记录到数据库中,同时保存用户名到Session中,当用户访问系统时,系统自动从对象得到用户信息,进行相关的操作。pro
34、tected void btnLogin_Click(object sender, EventArgs e) string userid = txtId.Text.Trim(); string passwd = txtPasswd1.Text.Trim(); string SQL = ; string passWordProtecQuestion = ; string passWordProtecQuestionAnwser = ; passWordProtecQuestion = dropProv.SelectedValue; passWordProtecQuestionAnwser = T
35、extpwProtecAnswer.Text.Trim(); SQL = string.Format(SELECT UserName FROM tb_User WHERE UserName=0,userid); object result = SqlDbHelper.ExecuteScalar(SQL); if (result = null) SQL = string.Format(INSERT INTOtb_User(UserName,PassWord,PassWordProtecQuestion,PassWordProtectionAnswer) VALUES(userid,passwd,
36、passWordProtecQuestion,passWordProtecQuestionAnwser); SqlParameter sp = new SqlParameter new SqlParameter(userid, userid), new SqlParameter(passwd, passwd), new SqlParameter(passWordProtecQuestion, passWordProtecQuestion), new SqlParameter(passWordProtecQuestionAnwser, passWordProtecQuestionAnwser),
37、 ; object result1 = SqlDbHelper.ExecuteNonQuery(SQL, CommandType.Text, sp); if (!Page.ClientScript.IsStartupScriptRegistered(Page.GetType(), alert) Page.ClientScript.RegisterStartupScript(Page.GetType(), alert, alert(注册成功!); Response.Write(history.go(-1);); SessionUserName = txtId.Text.Trim(); Respo
38、nse.Redirect(SD_login_index.aspx); else Response.Write(alert(该用户名已被注册,请重新输入!);); txtId.Text = ; txtPasswd1.Text = ; txtPasswd2.Text = ; txtId.Focus(); 系统注册页面如图4-2所示:图4-2 登录模块实现4.2.3 购物袋模块以及购买模块实现在线购物网站中购买者可以在不同的页面进行购物,本系统提供了两种购买方式一种是“立即购买”模式,一种是“加入尚品袋”模式,所有的商品都将通过这两种方式实现商品的购买,当用户在购物页面点击了“加入尚品袋”按钮之后,
39、将该商品的ID传入类中进行处理,根据用户添加商品的个数和商品的ID确定要购买的商品和其数量。如果用户点击“立即购买”按钮,将会把商品的信息写入cookie ,跳转到支付页面,在支付页面通过从cookie中读取数据,将相应信息加载过来。具体的支付实现将会在后面介绍。购物袋及购买模块的页面如图4-3所示:图4-3 购物袋及购买图4.2.4 商品搜索及筛选模块实现本系统实现对商品的搜索,主要是通过在页面获取用户输入的搜索条件,然后在后台和数据库进行模糊匹配,如果找到相应的信息,便将相应的商品信息显示在页面上。在商品的筛选功能中,包括多个条件的筛选,首先接收前台用户的要筛选的条件,在后台接收处理,然后在数据库中进行模糊匹配,查找是否存在满足条件的商品,若找到满足条件的商品就将商品的信息显示在网页上,让用户浏览5。下面列出实现商品搜索及筛选模块实现的部分代码。搜索模块功能实现的部分代码