基于C#的个性化在线订购平台的研究与实现_第1页
基于C#的个性化在线订购平台的研究与实现_第2页
基于C#的个性化在线订购平台的研究与实现_第3页
基于C#的个性化在线订购平台的研究与实现_第4页
基于C#的个性化在线订购平台的研究与实现_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

本科生毕业设计(论文)(2013届)设计(论文)题目基于C#的个性化在线订购平台的研究与实现作者姚骏骅分院经济管理分院专业班级电子商务092指导教师(职称)盛磊(实验师)论文字数9668论文完成时间2013年4月1日杭州师范大学钱江学院教学部制基于C#的个性化在线订购平台的研究与实现电子商务专业0902班姚骏骅指导教师盛磊摘要随着互联网技术的快速发展,网络早已经成为现代人日常生活中不可或缺的部分。在线订购由于其独有的便捷性和直观性,更能够轻而易举地被现代人认同和接受。互联网上诞生出这种便捷的订购形式,也是电子商务应用的全新体现;从另一个侧面来看,在线订购还起到了帮助推进电子商务的普及和应用进程的作用,同时也在帮助加速电子商务应用的步伐。关键词:电子商务;在线订购系统;C#;个性化ResearchandimplementationofpersonalizedonlineorderingplatformbasedonC#E-CommerceProfessionalclass0902YaoJunhuaInstructor:ShengLeiAbstract:WiththerapiddevelopmentofInternettechnology,thenetworkhadalreadybecomeanindispensablepartofthedailylifeofmodernpeople.Orderonlineconvenienceduetoitsuniqueandintuitive,andmorecanbeeasilyrecognizedbymodernandaccepted.ThebirthoftheInternet,thisconvenientorderformisalsoanewe-commerceapplicationsembody;Orderfromtheotherside,alsoplayedtheroleofhelpingtoadvancethepopularityofe-commerceandapplicationprocess,whilealsohelpingtoaccelerateelectronsthepaceofbusinessapplications.Keywords:E-commerce;onlineorderingsystem;C#;Personalized目录引言.1一、概述.1(一)个性化在线订购网站概述.1(二)个性化在线订购网站发展趋势.1二、个性化在线订购网站系统分析.2(一)系统设计的需求.2(二)系统所具有的功能.2(三)系统的业务操作流程.4三、系统数据库设计.4(一)SqlServer数据库介绍.4(二)数据库需求分析.5(三)数据库逻辑结构设计.6(四)数据库的关系图.12四、个性化在线订购网站模块功能设计.13(一)开发语言和架构介绍.13(二)系统前台页面设计.13(三)系统功能模块设计.16五、个性化在线订购网站关键技术分析.21(一)订单信息页面关键技术分析.21(二)数据库备份技术分析.25(三)个性化在线订购网站安全技术.26六、总结.29参考文献.30致谢.31基于C#的个性化在线订购平台的研究与实现电子商务专业0902班姚骏骅指导教师盛磊引言近年来,互联网已日益成为收集提供信息的最佳渠道并进入传统的流通领域。在Internet上发布商业信息,商品广告,使用户可以查阅商品、搜索商品、订购商品,为客户提供全天候的、更好的、更快的商务活动空间,实现网上交易的基本功能。网站依据目前商业网站的设计原则,以网上交易功能为主、辅于娱乐、广告、导购等功能,是一个综合性的电子商务网站。在电视等媒体出现以前,人们获取信息的主要方式是通过阅读书籍报刊等印刷媒体,有了电视以后人们获取信息的方式更多是通过看电视,因为电视能提供图像、声音等更丰富的信息,并能提供更快捷的服务。而现在人们能更有效的通过互联网来获取信息,是因为互联网能提供更加及时、大量的信息资源。互联网环境给我们带来的影响是广泛而深刻的,使信息资源的获取扩展到整个互联网络,所以可提供服务的信息资源极为丰富。一、概述(一)个性化在线订购网站概述随着互联网技术的普及,个性化印刷已经逐渐影响着我们的生活,互联网的在线设计方式为传统的设计模式开辟出一条全新路径。本系统运用B/S结构,采用C#语言开发系统。实现前台产品在线设计、在线订购、会员管理等功能;后台实现产品信息的发布、客户关系管理、订购信息管理、管理员管理、数据库备份和还原等功能。为了使网站交互功能要求完整和方便,本系统主要基于C#的设计。(二)个性化在线订购网站发展趋势在以前,不管是一张纸还是一本书,先找一家印刷厂印好产品或者服务的广告文件,然后贴好邮票,请邮局或快递公司帮你送到指定的地址。现在只需要在网上提交您的需求给对方,对方就能帮你完你想要完成的一切。在线订购网站的强项是利用网络来服务大区域的印刷买家。随着日益上升的需求量,个性化在线订购网站将可能有这三方面的发展趋势:1、用户信息管理有了更高的要求通过网络技术将网站的用户资料、用户信息等集成在一个平台上进行管理使用,实现各种信息的互相促进和增值,形成正规、科学的用户信息管理,保持网站用户的活跃度,保证网站用户的忠诚度。2、开发技术的日趋成熟随着日益增加的用户量和流量,ASP.net是把基于通用语言的程序在服务器上运行。不像以前的即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。ASP.net程序,只需要被执行1次就会在服务器上编译生成,当再次被执行时不需要重复进行编译,不会增加服务器的负担。而其他一些语言程序每次均需要占用服务器资源去运行编译,所以运行次数越多,ASP.net的优势越明显,例如网站的首页每天有10万访客,ASP.net只需要编译一次,比传统程序语言节省99999次的服务器占用负担。二、个性化在线订购网站系统分析(一)系统设计的需求1、前台系统需求用户可自行通过注册实现用户在本个性化在线订购网站的登录。成功登录后的用户可在网站的商品列表中选择自己喜欢的商品添加进入购物车,并可通过支付宝等支付方式进行有效支付。用户也可通过自己上传图片来实现图案的设定,设定成功后通过支付宝等支付方式进行支付。2、后台系统需求管理员通过管理员账户,自行登录网站后台。登录后台后,管理员可对网站的会员的信息进行相应的增删查改、对订单的有效性进行相应的修改、对产品的类别进行有效的添加和修改以及新闻的增删查改、数据库备份功能。(二)系统所具有的功能个性化网站系统的功能图如图3-1所示:个性化网站系统图2-1个性化网站系统功能图本个性化在线订购网站主要具有以下功能:1、超级管理员模块功能管理员模块的功能主要是拥有发布及对所有频道和栏目或更多功能进行操作。超级管理员可以说是系统的管理员,该模块要主要涉及对权限的管理,包括添加或删除其他一般管理员等。超级管理员的权限一般是兼信息员权限和审核员权限,并拥有发布及对频道或更多功能的操作。2、用户模块功能管理员信息管理用户信息管理订单管理产品管理广告管理物流管理后台前台支付登录用户产品定制用户模块的功能主要是针对用户行为管理的功能,用户可通过自己注册的账号来进行商品的选购。3、公共模块设计功能公共模块功能主要是涉及到上述三种权限的需要,具体功能包括找回密码、修改当前密码、重置密码、文件上传功能、内容列表管理功能、在系统上提交留言并查看相关的留言和回复信息。4支付模块功能用户通过支付宝给的API端口,利用自己的支付宝账号进行有效支付。(三)系统的业务操作流程系统业务流程图如图3-2所示:图2-2系统业务流程图普通用户通过登录网站平台,在网站上实现用户注册。注册成功后,浏览网站上提供的商品或进入个性化设计页面来设计自己的产品。若用户是通过个性化页面来设计自己的产品的方式,用户将产生的PNG图片上传至服务器,并进入支付页面,完成支付。若用户是通过浏览网站的方式进行支付,则用户在选定自己的产品及数量后进入支付页面,完成支付。管理员通过后台管理页面输入管理员账号和密码,进入后台后可对产品、订单、会员、新闻、广告、物流详情进行相应的管理,也可在网站后台实现数据库的备份。三、系统数据库设计用户登录注册登录上传自定义图片支付款项(一)SqlServer数据库介绍MicrosoftSQLServer2005是一套完整的数据库和分析产品,可迅速提供下一代可扩展电子商务,各种业务和数据仓库解决方案,并且具有对Windows操作系统良好的兼容性。它具有以下优点:1.完全的Web支持SQLServer2005提供了以Web标准为基础的扩展数据库编程功能。丰富的XML和Internet标准支持允许用户使用内置的存储过程以XML格式轻松存储和检索数据。用户可以使用XML更新程序容易的插入、更新和删除数据。2.高度的可伸缩性和可靠性使用SQLServer2005可以获得非凡的可伸缩性和可靠性。通过向上伸缩和向外扩展的能力,SQLServer2005满足了苛刻的电子商务和企业应用程序的要求。3.对数据库的操作SQLServer管理两种类型的数据库:系统数据库和用户数据库。系统数据库存储SQLServer专用的用于管理自身和用户数据库的数据,用户数据库用于存储用户数据。SQLServer创建的系统数据库包括Master、model、tempdb、msdb,还会创建一个叫PUBS的用户数据库样本。SQLServer中,数据库把所有的数据与数据库对象都放在一系列操作文件中,并用文件和文件组管理这些操作系统文件。文件分为3种:主文件、从属文件、日志文件,每个文件只能从属于一个数据库。主文件是一个数据库的起始点,一个数据库文件只能有一个主文件而且必须有一个主文件。主文件的扩展名是MDF。从属文件的数目是任意的,一般一个小型的数据库可能没有从属文件,而一个大型数据库可能存在多个从属文件。从属文件和主文件一同存储数据以及数据库对象。从属文件的扩展名是NDF。日志文件用来存放数据库的事务日志信息,这些信息对恢复数据库是十分关键的,一般一个数据库必须至少有一个日志文件。日志文件的扩展名是LDF。在本系统中,仅用到了数据库的创建、查询、存储关系表的操作。(二)数据库需求分析数据库需求分析主要研究用户在实际运用中会有哪些具体操作、操作权限以及操作的方法等等。通过多次讨论我们得知,不同权限的用户可得知不同的信息和进行不同的操作。根据功能来实现数据库表的设计,首先,实现网站信息管理发布的功能,需要动态维护一些动态的新闻类别的信息,建立新闻表(News)、广告图管理表(Advertisement)。其次,用户需要进行注册自己的信息以及自己的用户空间,建立用户表(User)、用户图片空间表(UserImageZone)。再次,要实现相应的B2C模式的商品买卖,建立商品信息表(Product)、物流详情表(Logistics)、订单表(Order)。最后需要管理员进行相应管理,建立管理员表(Admin)、产品大类表(ProductBigClass)、产品小类表(ProductSmallClass)、新闻大类表(BigClass)、新闻小类表(SmallClass)。具体内容:新闻表(News):唯一标识(id)、标题(Title)、副标题(SubTitle)、新闻内容(Content)、更新时间(UpdateDate)、是否审核(Checked)、点击率(Click)、是否置顶(OnTop)、唯一性(Unit)、用户ID(UserID)、图片地址(Pic)。广告图管理表(Advertisement):唯一标识(id)、图片引用地址(imgURL)、图片跳转路径(actionURL)、是否可见(active)、图片大类(bigclass)、图片小类(smallclass)。用户表(User):用户ID(userid)、淘宝ID(taobaoid)、用户名(username)、密码(pwd)、性别(sex)、邮箱(email)、电话(tel)、QQ(qq)、生日(birthday)、地址(address)、邮编(zipcode)。用户图片空间表(UserImageZone):唯一表示(id)、用户ID(userid)、图片地址(imgURL)、添加时间(addtime)。商品信息表(Product):唯一标识(id)、产品编号(productid)、产品大类(bigname)、产品小类(smallname)、产品名称(name)、产品价格(price)、折扣率(discount_rate)、折扣开始时间(discount_starttime)、折扣结束时间(discount_endtime)、商品图片(pic)、图片宽度(picwidth)、图片高度(pichight)、精度(precision)、线率(line_rate)、是否置顶(ontop)、点击率(click)、销售量(buy_count)、产品详情(info)。物流详情表(Logistics):唯一标识(id)、省份名称(provinceName)、区域(city)、物流公司名称(company)、价格(price)。订单表(Order):订单编号(orderid)、用户id(userid)、产品id(productid)、淘宝ID(taobaoid)、用户名(username)、产品大类名(bigname)、产品小类名(smallname)、产品名(name)、价格(price)、图片(pic)、电话(tel)、邮寄地址(address)、订购时间(addtime)、邮编(zipcode)、用户留言(descripition)、物流公司编号(id),是否基础(send)、寄出时间(sendtime)、支付方式(payment)、用户账号(useraccount)、支付时间(paytime)。管理员表(Admin):唯一标识(id)、用户名(name)、密码(psw)、真实姓名(realname)、部门(partname)、电话(tel)、管理员权限(Purview)、登录IP(LogIP)、登录时间(LogTime)。产品大类表:唯一标识(id)、大类名称(bigname)、大类编号(bigorder)、是否可见(show)。产品小类表:唯一标识(id)、大类名称(BigName)、小类名称(SmallName)、小类编号(SmallOrder)。新闻大类表:唯一标识(id)、大类名称(BigName)、大类编号(BigOrder)、是否可见(Show)。新闻小类表:唯一标识(id)、大类名称(BigName)、小类名称(SmallName)、小类编号(SmallOrder)。(三)数据库逻辑结构设计本系统使用SQLServer2005数据库。Admin表:该表用于记录管理员账号和密码,具体表结构如下:表3-1Admin表结构表列名数据类型约束说明IdInt主键管理员idnameVarchar(50)非空管理员账号pswVarchar(50)非空管理员密码realnameVarchar(50)默认为NULL真实姓名telVarchar(50)默认为NULL电话PurviewVarchar(50)默认为NULL管理员权限LopIPVarchar(50)默认为NULL登录IPLogTimeSmalldatetime默认为NULL登录时间Advertisement表:该表用于管理首页轮播图的呈现,具体表结构如下:表3-2Advertisement表结构表列名数据类型约束说明IdInt主键,自增长轮播图IDimgURLVarchar(50)默认为NULL图片引用地址actionURLVarchar(50)默认为NULL图片跳转地址activeBit默认为NULL是否可见bigclassVarchar(50)默认为NULL图片大类名称smallclassVarchar(50)默认为NULL图片小类名称BigClass表:该表用于定义新闻大类,具体表结构如下:表3-3BigClass表结构表列名数据类型约束说明IdInt主键,自增长新闻大类IDBigNameVarchar(50)非空新闻大类名称BigOrderInt默认为NULL大类编号ShowBit默认为NULL是否可见Logistics表:该表用于记录物流详细信息,具体表结构如下:表3-4Logistics表结构表列名数据类型约束说明IdInt主键,自增长物流详情IDprovinceNameVarchar(50)默认为NULL省份cityVarchar(50)默认为NULL区域companyVarchar(50)默认为NULL物流公司priceVarchar(50)默认为NULL价格News表:该表用于记录新闻详细信息,具体表结构如下:表3-5News表结构表列名数据类型约束说明IdInt主键,自增长新闻IDTitleVarchar(50)非空新闻主标题SubTitleVarchar(50)默认为NULL新闻副标题BigClassVarchar(50)非空新闻大类SmallClassVarchar(50)非空新闻小类ContentText非空新闻内容UpdateDateSmalldatetime非空更新时间CheckedBit非空是否审核ClickInt非空点击量OnTopBit非空是否置顶UnitVarchar(50)默认为NULL唯一性UserIDVarchar(50)默认为NULL用户IDPicBit非空新闻图片Order表:该表用于记录订单详细信息,具体表结构如下:表3-6Order表结构表列名数据类型约束说明orderidInt主键,自增长订单IDuseridInt默认为NULL用户IDproductidVarchar(50)默认为NULL产品IDtaobaoidVarchar(50)默认为NULL淘宝IDusernameVarchar(50)默认为NULL用户名bignameVarchar(50)默认为NULL产品大类名smallnameVarchar(50)默认为NULL产品小类名nameVarchar(50)默认为NULL产品名称priceVarchar(50)默认为NULL价格picVarchar(50)默认为NULL产品图片telVarchar(50)默认为NULL联系电话addressVarchar(100)默认为NULL地址addtimeDatetime默认为NULL下单时间zipcodeInt默认为NULL邮编descriptionVarchar(1000)默认为NULL用户留言idInt外键(引用Logistics表id字段),默认为NuLL物流公司IDsendBit默认为NULL是否寄出sendtimeDatetime默认为NULL寄出时间paymentVarchar(50)默认为NULL支付方式useraccountVarchar(50)默认为NULL用户账号paytimeDatetime默认为NULL支付时间Product表:该表用于记录产品详细信息,具体表结构如下:表3-7Product表结构表列名数据类型约束说明idInt主键,自增长IDproductidInt默认为NULL产品IDbignameVarchar(50)外键(引用Product表bigname字段),默认为NULL产品大类名称smallnameVarchar(50)外键(引用Product表smallname字段),默认为NULL产品小类名称nameVarchar(50)默认为NULL产品名称priceVarchar(50)默认为NULL产品价格discount_rateFloat默认为NULL折扣率discount_starttimeDatetime默认为NULL折扣开始时间discount_endtimeDatetime默认为NULL折扣结束时间picVarchar(200)默认为NULL产品图片picwidthVarchar(50)默认为800产品图片宽度pichightVarchar(50)默认为600产品图片高度precisionVarchar(50)默认为NULL精度line_rateVarchar(50)默认为NULL线率ontopBit默认为NULL是否置顶clickInt默认为NULL点击量buy_countInt默认为NULL销售量infoVarchar(1000)默认为NULL产品详情ProductBigClass表:该表用于定义产品大类详情,具体表结构如下:表3-8ProductBigClass表结构表列名数据类型约束说明IdInt主键,自增长产品大类IDbignameVarchar(50)非空产品大类名称bigInt默认为NULL大类编号showBit默认为NULL是否可见ProductSmallClass表:该表用于定义产品大类详情,具体表结构如下:表3-9ProductSmallClass表结构表列名数据类型约束说明IdInt自增长产品小类IDbignameVarchar(50)主键,外键(引用ProductBigClass表bigname字段),非空产品大类名称smallnameVarchar(50)主键,非空产品小类名称smallorderInt默认为NULL产品小类编号SmallClass表:该表用于定义产品大类详情,具体表结构如下:表3-10SmallClass表结构表列名数据类型约束说明Idint自增长新闻小类IDBigNameVarchar(50)主键,外键(引用News表BigName字段),非空新闻大类名称SmallNameVarchar(50)主键,非空新闻小类名称SmallOrderint默认为NULL新闻小类编号User表:该表用于记录用户详情,具体表结构如下:表3-11User表结构表列名数据类型约束说明useridint主键,自增长用户IDtaobaoidVarchar(50)默认为NULL用户淘宝IDusernameVarchar(50)默认为NULL用户名pwdVarchar(50)默认为NULL密码sexVarchar(50)默认为NULL性别emailVarchar(50)默认为NULL邮箱telVarchar(50)默认为NULL联系电话qqVarchar(50)默认为NULLQQbirthdayVarchar(50)默认为NULL生日addressVarchar(50)默认为NULL邮寄地址zipcodeint默认为NULL邮编UserImageZone表:该表用于定义用户图片空间详情,具体表结构如下:表3-12UserImageZone表结构表列名数据类型约束说明Idint主键,自增长用户图片空间IDuseridVarchar(50)外键(引用User表userid字段),默认为NULL用户IDimgURLVarchar(50)默认为NULL图片地址addtimeint默认为NULL添加时间(四)数据库的关系图图3-13数据库关系图由图3-13可知,管理员管理后台,包括对后台新闻的管理,用户管理和订单的管理;用户功能包括用户注册、购置产品,具体关系如下:(1)一个管理员可以管理不同商品,不同的用户,不同的订单,不同的新闻。所以管理员和商品、用户、订单、新闻是一对多的关系。(2)对于一个用户来说,它可以拥有多个不同的地址,可以购买多个不同的商品,可以下多个订单,所以用户和地址、商品与订单的对应关系都是一对多。对于一个订单来说,它只拥有一个地址,所以订单和地址之间的关系是一对一。(3)而商品则可能一个商品存在于多个订单中,所以商品和订单之间的关系是一对多。一个商品能被多个管理员管理,所以商品和管理员之间的关系是一对多。四、个性化在线订购网站模块功能设计(一)开发语言和架构介绍1、开发语言本系统采用C#语言,C#具有如下特性:完全支持类和面向对象编程,包括接口和继承、虚函数和运算符重载的处理;定义完整、一致的基本类型集;对自动生成XML文档说明的内置支持。自动清理动态分配的内存;可以用用户定义的特性来标记类或方法。这可以用于文档说明,对编译有一定的影响(例如,把方法标记为只在调试时编译)4。对.NET基类库的完全访问权,并易于访问WindowsAPI。可以使用指针和直接内存访问,但C#语言可以在没有它们的条件下访问内存。以VB的风格支持属性和事件。改变编译器选项,可以把程序编译为可执行文件或.NET组件库,该组件库可以用与ActiveX控件(COM组件)。相同的方式由其他代码调用。C#可以用于编写ASP.NET动态Web页面和XMLWeb服务。2、架构框架本系统采用的框架是.NET框架。它是一个多语言组件开发和执行环境,提供了一个跨语言的统一编程环境。.NET框架的目的是便于开发人员更容易地建立Web应用程序和Web服务,使得Internet上的各应用程序之间,可以使用Web服务进行沟通。从层次结构来看,.NET框架又包括三个主要组成部分:公共语言运行时(CLR:CommonLanguageRuntime)、服务框架(ServicesFramework)和上层的两类应用模板传统的Windows应用程序模板(WinForms)和基于ASPNET的面向Web的网络应用程序模板(WebForms和WebServices)。(二)系统前台页面设计1、网站首页设计网站首页通过DIV+CSS的形式进行布局1,配上jQuery前端技术,实现使用户在第一时间访问本网站时,将网站最新的动态展现给用户。如图4-1:2、用户登录页面用户通过在此输入用户名和密码实现登录功能,登录后的用户才可在本网站进行选购。在此过程中,凡出现用户名或密码不正确,系统都会给与相应的提示。如图4-2:图4-1网站首页3、用户注册页面用户通过在此输入邮箱、密码实现注册功能。凡出现用户名已被注册、两次密码相同等情况,系统也会给与相应的提示。如图4-3:图4-2用户登录页面图4-3登录页面4、产品列表页面用户浏览此页面时,系统会将所拥有的产品一一呈现在用户面前,供用户选择。如图4-4:图4-4产品列表页面5、产品详情页面用户详情页面来浏览该产品的相关信息,如图4-5:6、购物车页面图4-5产品详情页面(三)系统功能模块设计1、管理员模块设计管理员是本系统后台的管理者。在登录时,管理员通过网站后台登录,登录成功后进入本系统的后台管理页面,然后对本系统进行相应的管理。为确保相应的安全,本系统对密码进行了MD5加密以及登陆时给出了验证码作为验证请求,如图4-7。管理员进入系统后,可通过权限的不同,对其他管理员实行响应的管理,如图4-8。图4-6购物车页面图4-7后台首页2、会员管理模块管理员登录后台后,进入会员管理页面,可自行查找、查看和管理网站的注册用户,如图4-9、4-10。图4-8管理员名单页面图4-9用户管理页面3、订单管理模块管理员登录订单管理页面,可根据在搜索栏中提交自己想要搜索的数据,查询相应的信息。当管理员确认该订单已经生效时,可更新栏目最前方的是否寄出,方便管理员进行管理,如图4-11。图5-10用户信息详情页图4-10用户详情页面4、产品管理模块管理员登录产品管理页面后,可根据在搜索栏中提交自己想要搜索的数据,查询相应的信息。在找到相应的产品信息后,可对该产品进行相应的修改和删除。如图4-12。图4-11订单管理页面图5-12产品管理页面图4-12产品列表页面5、新闻管理模块管理员可在新闻管理页面、添加页面对网站的新闻进行相应的添加和删除,如图4-14、4-15。图4-13产品详情页面6、广告管理管理员可对网页前端首页轮播图进行相应的管理,如图4-16、4-17。图4-14新闻管理页面图4-15新闻添加页面7、物流详情管理管理员可以在这里实现对物流公司的添加和价格的添加和更新,如图4-18。图4-16页面广告管理页面图4-17页面广告添加页面8、数据库备份管理员登录数据库备份页面,可以对当前的数据库进行相应的备份,并可以选择数据库备份路径,如D:backup,如图4-19。五、个性化在线订购网站关键技术分析(一)订单信息页面关键技术分析网站在运行到支付订购页面时,用户要相应选择的区域城市已经相应的物流。本系统通过使用JS来控制后台CS代码,并在前端页面进行相应的展示。基于AjaxPro的二级联动,主要涉及最前端的ASPX页面、JavaScript、控制ASPX的CS文件。AjaxPro是一种Ajax框架,可以在运行在.NET1.1和.NET2.0上。这个框架能会创建图4-18物流详情管理页面图4-19数据库备份界面一个代理类可以使客户端的JS代码能调用服务端的方法,并能返回各种你在.NET里使用的类型。联动效果如图5-1:1、页面加载当用户跳转到该页面时,页面首先加载页面的CS文件,通过LINQ语句:varquery=fromcindb.LvinceName,c.cityselectnewc.id,vinceName,c.city,pany,c.price;查询数据库表中的Logistics表中的id,provinceName,city,company,price五个字段,并将查询出来的结果返回一个DateTable类型的logistics。取出值后,通过foreach(varloginquery)语句,分别将返回集中的provinceName和city值储存于bigClassStr和smallClassArri中。图5-1订单详情页面protectedvoidPage_Load(objectsender,EventArgse)if(Sessionuserid=null)Response.Redirect(Login.aspx);elseAjaxPro.Utility.RegisterTypeForAjax(typeof(User_Order);DataClassesDataContextdb=newDataClassesDataContext();/查询物流表varquery=fromcindb.LvinceName,c.cityselectnewc.id,vinceName,c.city,pany,c.price;logistics=query.ToDataTable(rec=newobjectquery);intcount=(fromcindb.LvinceName).Distinct().Count();/Distinct()的作用是过滤重复的记录stringprovince=,city=;inti=-1;smallClassArr=newstringcount;foreach(varloginquery)if(province!=vinceName)province=vinceName;i+;if(bigClassStr=)bigClassStr=province;elsebigClassStr+=|,|+province;if(city!=log.city)city=log.city;if(smallClassArri=null)smallClassArri=log.city;elsesmallClassArri+=|,|+log.city;2、城市选择页面加载完成后,当用户点击页面的省份选择按钮,触发JS中的(#selbig).change()事件,实现该省份对应city字段加载至id为selsmall的标签下。$(#selbig).change(function()$(#selsmalloption).remove();varsmallArr;smallArr=CataArr$(#selbig)0.selectedIndex-1.split(|,|);$(#selsmall).append(请选择);for(vari=0;i+smallArri+);$(#selsmall)0.selectedIndex=0;);3、物流选择当用户选择相应的省份之后,用户讲点击相应省份对应的城市区域,此时,将出发JS中的$(#selsmall).change()事件,实现选择不同的区域,对于显示不同的物流公司及价格。JS会触发调用CS文件中的GetCompanyList方法,通过LINQ语句:varquery=fromcindb.LvinceName=provinceName&c.city=cityselectnewc.id,vinceName,c.city,pany,c.price;查询出相对应的物流公司及价格,并通过JS加载值Div为company的标签内。$(#selsmall).change(function()$(#companyp).not(.old).remove();varprovinceName=$(#selbig).val();varcity=$(#selsmall).val();varr=User_Order.GetCompanyList(provinceName,city).value;varrows=r.Rows;varcolumns=r.Columns;for(vari=0;inewobjectquery);Rows=dt.Rows.Count;returndt;联动流程图:(3)(1)(2)图5-2联动流程图(1)页面加载是触发CS文件中的Page_Load事件,将页面需要的bigClassStr和smallClassArr以定义全局变量的形式返传至ASPX页面(2)ASPX页面通过嵌入JS函数,当点击selbig的标签时,触发JS事件,处理页面传过来的bigClassStr和smallClassArr(3)页面重新对JS处理过的标签重新进行加载,实现相应的二级联动效果。(二)数据库备份技术分析CS文件ASPX页面JS函数随着办公自动化和电子商务的飞速发展,企业对信息系统的依赖性越来越高,数据库作为信息系统的核心担当着重要的角色。尤其在一些对数据可靠性要求很高的行业如银行、证券、电信等,如果发生意外停机或数据丢失其损失会十分惨重。为此数据库管理员应针对具体的业务要求制定详细的数据库备份与灾难恢复策略,并通过模拟故障对每种可能的情况进行严格测试,只有这样才能保证数据的高可用性。数据库的备份是一个长期的过程,而恢复只在发生事故后进行,恢复可以看作是备份的逆过程,恢复的程度的好坏很大程度上依赖于备份的情况。此外,数据库管理员在恢复时采取的步骤正确与否也直接影响最终的恢复结果。在SQLServer中,T-SQL语言里提供了BACKUPDATABASE语句来备份数据库,用该语句可以完成完整、差异、文件和文件组备份。如果要备份事务日志则要用BACKUPLOG语句。虽然BACKUPDATABASE语句可以进行完整、差异、文件和文件组备份,但是在完整备份、差异备份与文件和文件组备份的语法上有一点点出入。本系统通过前台页面点击ImgBtnOK这个按钮,触发函数,通过sql的backup语句实现对本数据进行相应的备份功能:protectedvoidImgBtnOK_Click(objectsender,ImageClickEventArgse)Commonc=newCommon();stringcmdtxt1=DataSource=localhost;InitialCatalog=+DDLDataBase.SelectedValue+;IntegratedSecurity=True;stringcmdtxt2=backupdatabase+DDLDataBase.SelectedValue+todisk=+TextBox1.Text.Trim()+.bak;SqlConnectionconnection=newSqlConnection(cmdtxt1);connection.Open();trySqlCommandcommand=newSqlCommand(cmdtxt2,connection);command.ExecuteNonQuery();c.Msgbox(this,备份数据成功!);catch(Exceptionms)Response.Write(ms.Message);c.Msgbox(this,备份数据失败!);finallyconnection.Close();(三)个性化在线订购网站安全技术1、验证码技术验证码(CAPTCHA)是“CompletelyAutomatedPublicTuringtesttotellComputersandHumansApart”(全自动区分计算机和人类的图灵测试)的缩写,是一种区分用户是计算机和人的公共全自动程序。可以防止:恶意破解密码、刷票、论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试,实际上是用验证码是现在很多网站通行的方式(比如招商银行的网上个人银行,百度社区),我们利用比较简易的方式实现了这个功能。具体实现代码如下:publicclassHandler:IHttpHandlerpublicstringsuffix;publicvoidProcessRequest(HttpContextcontext)HttpPostedFile_upfile=context.Request.FilesFile1;if(_upfile=null)ResponseWriteEnd(context,4);/请选择要上传的文件elsestringfileName=_upfile.FileName;/*获取文件名:C:DocumentsandSettingsAdministrator桌面123.jpg*/stringsuffix=fileName.Substring(fileName.LastIndexOf(.)+1).ToLower();/*获取后缀名并转为小写:jpg*/intbytes=_upfile.ContentLength;/获取文件的字节大小stringexs=newstringjpg,bmp,gif,png,jpeg;boolbex=false;foreach(stringexinexs)if(suffix=ex)bex=true;break;if(!bex)ResponseWriteEnd(context,2);/只能上传JPG格式图片if(bytes1024*1024)ResponseWriteEnd(context,3);/图片不能大于1Mstringsavepath=HttpContext.Current.Server.MapPath(/Images/+DateTime.Now.ToString(yyyyMMddhhssmm)+.+suffix);_upfile.SaveAs(savepath);/保存图片ResponseWriteEnd(context,/Images/+savepath.Substring(savepath.LastIndexOf()+1);/上传成功privatevoidResponseWriteEnd(HttpContextcontext,stringmsg)context.Response.Write(msg);

温馨提示

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

评论

0/150

提交评论