已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计论文基于c2c的易货系统的毕业论文 目录 摘要3第一章 引言5第一节 概述5第二节 现代易货方式6第三节 现代易货交易的前景7第四节 设计的总体目标及要求8第二章 关键技术及总体设计9第一节 关键技术9一、数据操作ADO.NET9二、数据绑定技术11第二节 功能结构图18第三节 功能设计18第四节 各个文件及界面19第三章 易货系统的详细设计20第一节 数据库设计20一、用户信息表20二、商品分类表20三、商品信息表21四、商品留言表21五、联系我们表22第二节 详细实现22一、top用户控件22二、主页母版23三、注册页面25四、主页25五、生成验证码28六、添加货物29七、货物详细信息30八、货物管理32九、联系我们34第四章 易货系统的测试34第一节 主页面34一、登录34二、搜索35三、商品显示35第二节 货物添加36第三节 货物管理36第四节 详细信息37第五节 联系我们38第六节 管理员登陆39第七节 管理员用户管理39第八节 管理员货物管理40第九节 管理员商品留言管理40第十节 管理员网站留言管理40第十一节 页面顶部,底部41第五章 结论与展望41第一节 结论41第二节 展望42结束语43谢辞44参考文献:45 摘要易货就是不用现金结算,以物换物的交易方式。属于电子商务新兴的交流渠道。由于不受现金流的限制,其发展具有很大的空间。 本易货系统提供一个个人与个人交换货物的平台,基于因特网这个交易平台,利用易货额度(而不是现金)及特殊的易货交易软件,打破时间和空间的限制,实现企业与企业之间与消费者之间商品或服务的自由交换。用户根据自己需要,查询自己需要的货物,并可以查看货物的相关情况,与货主进行联系,选择双方都满意的交换方式。货主能够利用这个平台,发布自己货物信息(包括图片),对于已经交换的物品,货主可以改变货物状态,并根据需要更改货物信息。用户可以通过此系统与软件开发者联系,以便开发者及时更新软件,使软件更人性化。 本文介绍易货系统开发所用技术,并对开发过程进行详细说明。对于开发过程遇到的困难给出解决的办法,对于重要的技术进行详细介绍。最后,本文对开发的易货系统给出详细的运行过程,并对运行的过程进行介绍,验证了易货系统的有效性,得到了良好的结果,并对软件的进一步开发,提出了建议。 关键词:易货 C2C 网络 Abstract Barter is not cash settled, barter transaction. E-commerce channels of communication are emerging. The absence of any cash flow constraints, its development has a lot of space. The barter system provides a personal and individual platform for the exchange of goods, this Internet-based trading platform, using barter amount (not cash) and a special barter trading software, to break the constraints of time and space, between the enterprise and the enterprise and consumers the freedom to exchange goods or services. Users according to their needs, check the goods they need, and can view the goods in the relevant circumstances, contact with the owner, choose a mutually satisfactory exchange. Owner can use this platform to release their cargo information (including images), has been exchanged for goods, the owner can change the status of goods, and goods needed to change the information. The system users can contact with software developers to update the software developers to make software more human. This article describes the development of the technology used the barter system, and the development process in detail. Difficulties encountered in the development process gives a solution to an important technology for the details. Finally, on the development of the barter system running process is given in detail, and introduces the process of running, verify the validity of the barter system to obtain good results, and further development of the software, suggested. Keywords: barter C2C Network第一章 引言第一节 概述 现代易货是基本传统易货发展起来的一种全新易货方式,以网上交易和电子结算为主要特征,能够实现“多边”易货交易。确切的说,现代易货是通过基于互联网上的易货交易平台,引入银行卡的结算技术,利用易货额度(而不是现金)及特殊的易货交易软件,打破时间和空间的限制,实现企业间B2B甚至是B2B的商品或服务的自由交换。 现代易货始于20世纪50年代的美国,经过几十年的发展,现代易货已成为21世纪商业的重要组成部分,它不但是企业处理闲置资产、积压库存的增值策略,更成为企业扩大贸易机会、扩展营销渠道、获得额外利润的全球贸易手段和重要新兴产业!全球500强企业80%已设立贸易专部。最近资料显示,美国易货贸易已占全世界商业交易总量30%。现有30多万家美国公司积极组织易货贸易。国际互换贸易协会IRTA预测:今后五年内,易货公司客户数目将翻一番,五年后在此基础上再翻一番平均年增长率15%。 在很多人看来,易货业的大发展似乎总是与经济低迷相关联,比如美国“911”事件、阿根廷经济危机、1997年的亚洲金融危机,但现代易货业的发展早已不止于此。多年以来,从联合国的“石油换食品计划”到媒体经营中的广告换产品,现代易货在日常经济生活中其实已经无处不在。据有关统计,在美国500强企业中一半左右都有专门的易货部门,全美国已有400多家专业易货公司,并有50多家颇具规模的网上易货贸易公司。 易货 - 主要模式传统易货:起源于二战后,基于缓解经济萧条、处理闲置资产、积压库存的现实需要,传统易货在拉美诸国得到广泛发展,这种易货方式具有区域性特点,多在当地企业之间进行“点对点”交易;五十年代,社会主义国家之间及第三世界广泛采取易货贸易方式;七十年代以来,传统易货发展尤为迅猛。 公司易货:公司易货是企业与企业之间进行易货的交易方式。这种易货交易主要面向大中型企业,适合跨地区交易的大额商品或服务。 国际易货:国际易货是大宗跨国的易货交易方式。即一个国家的易货公司与另一个国家或几个国家的易货公司之间的易货贸易,也包括边贸易货或政府间的易货,俗称“对等贸易”。12第二节 现代易货方式 现代易货交易有三种不同的易货方式。 第一种是面向中小企业和专业人员的“零售易货”(Retail Barter),这是现代易货最活跃的交易方式。 一个会员易出的产品或服务所获得的交易元(或信贷)可以用来购买其他会员的产品和服务。这样一买或一卖不是两家公司一对一的产品和服务的交换,而是利用易货货币(交易元TRADE DOLLAR)来实现的会员间多种产品和服务的直接买卖。易货货币的使用为企业提供了增加新客户和扩大市场的竞争优势,可以使中小型企业保留其现金并限制了为购买所需物资和服务所要花费的成本。易货交易公司则以第三方的身份做为记帐员或结算中心来监管每笔交易。易货交易公司通常有与股票经纪人的职能相当的“易货交易经纪人”,经纪人将买方和卖方找到一起并做为他们的商务顾问促成双方的交易。 交易举例: 1某易货公司会员“A”需要修车服务(如喷漆); 2会员“A”可以与同样是该易货公司会员的汽车维修厂“B”联系; 3汽车维修厂做完了修车服务工作,最后的修车费为1500交易元; 4会员“A”在易货公司有其交易元帐户,会员“B”(汽车维修厂)通过24小时的电话服务向易货公司提出付款申请; 5易货公司就从会员“A”的帐户中扣除1500元的交易元,并记到会员“B”的帐户上,这笔交易完成。 6会员“B”又可以用他的交易元向易货公司的其他成员购买任何产品或服务。如向会员“C”(油漆商)购买喷漆。 第二种是大公司间的“公司易货”(Corporate Barter)。 这种易货交易主要面向大型企业,如:制造商、批发商和大型销售商,其交易金额通常高达成百上千万。这些企业往往有过剩库存或生产能力,可以通过易货来获得其所需要的商品,如:广告、各类服务和其他新产品资源。福特汽车公司就曾用其车辆换得冬奥会上的促销权。 典型的“公司易货”是用易货公司自己的贷币(称为“易货额度”)来购买想要易出货物的公司的资产或产品。这种“易货额度”是易货公司自己“小经济”圈内的代币形式,类似“零售易货”的“交易元”。例如:一家企业若想出售其过剩库存,它就要依靠易货交易公司用“易货信贷”或“易货额度”来购买这些库存商品,随后易货公司以其提供的所需产品或服务来完成这个信贷或额度兑现;有时也可以通过其他渠道变现那些库存商品。“公司易货”过程中的交易公司在交易中以被委托人的身份出现,对货物有拥有权,并负有义务完成交易信贷或额度兑现,即为企业提供所需的产品或服务。 第三种是“国际易货”(International Barter)。它与公司易货基本相同,所不同的是它是一个国家的易货公司对另一个国家或几个国家的交易公司之间的易货交易,也包括政府间的易货。国际易货交易的范例之一是美国百事可乐公司用百事可乐换取前苏联的伏特加,并使它成为美国市场上卖的最好的品牌之一。 第三节 现代易货交易的前景 现代易货交易是20世纪90年代发展迅速的行业,更是21世纪商业的重要部分。根据美国财政部称,各类形式的易货交易占全世界商业交易总量的30%多。仅在北美洲,通过商业易货交易公司成交的易货额现在已超过了每年160亿美元,有30多万家美国公司积极运用有组织的易货交易。据“华尔街时报”统计,在美国、加拿大、墨西哥有3000多家公司使用“公司易货”。 今天,现代易货交易不仅是解决各种财务问题的有效手段,也是企业营销的强大工具。 现代易货的优越性主要体现为: 1清理“三角债”,盘活企业资产; 2节省资金支出,降低费用; 3利用易货,使企业不动用货币资金,便可以得到所需原材料,组织生产和服务; 4开辟新市场,扩大贸易机会,增加出口; 5有效利用过剩生产能力,增加销售额; 6利用库存商品进行投资、置换、获得现金、债权、股权等收益; 7参加国际化、规范化的易货交易,结识更多的客户。 由于现代易货为企业提供了诸多益处,易货交易将会得到进一步的增长和发展,行业内企业的复杂和专业化程度也会相应提高。随着易货交易的持续增长与发展,小型地区性易货交易将会迅速消失,易货交易将依赖于有多家分支机构的大型易货交易公司。此外,因特网的出现为全球贸易带来了更大的机会,因特网的服务为参与易货的公司提供了超越本地区的市场,而关贸总协定也使易货交易的国际化成为可能。 第四节 设计的总体目标及要求建立易货平台。完成个人身份的注册、注册后的用户可以发布自己的物品信息,并且选择自己希望换到的物品、发布信息,物品信息进行分类,可以根据关键词进行查询,等关键功能。物品信息进行分类,用户可以根据自己的喜好选择分类、项目成功后,进一步可以在校园网中尝试采用这种易货方式。 第二章 关键技术及总体设计第一节 关键技术一、数据操作ADO.NETADO.NET的名称起源于ADO(ActiveX Data Objects),这是一个广泛的类组,用于在以往的Microsoft技术中访问数据.之所以使用ADO.NET名称,是因为Microsoft希望表明,这是在.NET编程环境中优先使用的数据访问接口. ADO.NET是与数据源交互的.NET技术。有许多的Data Providers,它将允许与不同的数据源交流取决于它们所使用的协议或者数据库。然而无论使用什么样的Data Provider,你将使用相似的对象与数据源进行交互。SqlConnection对象管理与数据源的连接。SqlCommand对象允许你与数据源交流并发送命令给它。为了对进行快速的只“向前”地读取数据,使用SqlDataReader。如果想使用断开数据,使用DataSet并实现能进行读取或者写入数据源的SqlDataAdapter。(一)作用它提供了平台互用性和可伸缩的数据访问。ADO.NET增强了对非连接编程模式的支持,并支持RICH XML.由于传送的数据都是XML格式的,因此任何能够读取XML格式的应用程序都可以进行数据处理。事实上,接受数据的组件不一定要是ADO .NET组件,它可以是基于一个Microsoft Visual Studio的解决方案,也可以是任何运行在其它平台上的任何应用程序。 ADO.NET是一组用于和数据源进行交互的面向对象类库。通常情况下,数据源是数据库,但它同样也能够是文本文件、Excel表格或者XML文件。 ADO.NET允许和不同类型的数据源以及数据库进行交互。然而并没有与此相关的一系列类来完成这样的工作。因为不同的数据源采用不同的协议,所以对于不同的数据源必须采用相应的协议。一些老式的数据源使用ODBC协议,许多新的数据源使用OleDb协议,并且现在还不断出现更多的数据源,这些数据源都可以通过.NET的ADO.NET类库来进行连接。 ADO.NET提供与数据源进行交互的相关的公共方法,但是对于不同的数据源采用一组不同的类库。这些类库称为Data Providers,并且通常是以与之交互的协议和数据源的类型来命名的。表1列处了一些常见的data providers,以及它们所使用的API前缀,和允许进行交互的数据源类型3。 (二)ADO.NET包含的类SqlConnection 类和数据库交互,你必须连接它。连接帮助指明数据库服务器、数据库名字、用户名、密码,和连接数据库所需要的其它参数。connection对象会被command对象使用,这样就能够知道是在哪个数据库上面执行命令。 与数据库交互的过程意味着你必须指明想要发生的操作。这是依靠command对象执行的。你使用command对象来发送SQL语句给数据库。command对象使用connection对象来指出与哪个数据库进行连接。你能够单独使用command对象来直接执行命令,或者将一个command对象的引用传递给SqlDataAdapter,它保存了一组能够操作下面描述的一组数据的命令4。 COMMAND对象成功于数据建立连接后,就可以用COMMAND对像来执行查询,修改,插入,删除等命令; COMMAND对像常用的方法有ExecuteReader方法,ExcrteScalar()方法ExecuteNonQuery()方法;插入数据可用ExecuteNOnQuery()方法来执行插入命令。 sqlDataReader类许多数据操作要求你只是读取一串数据。data reader对象允许你获得从command对象的SELECT语句得到的结果。考虑性能的因素,从data reader返回的数据都是快速的且只是“向前”的数据流。这意味着你只能按照一定的顺序从数据流中取出数据。这对于速度来说是有好处的,但是如果你需要操作数据,更好的办法是使用DataSet。 DataSet对象DataSet对象是数据在内存中的表示形式。它包括多个DataTable对象,而DataTable包含列和行,就象一个普通的数据库中的表。你甚至能够定义表之间的关系来创建主从关系(parent-child relationships)。DataSet是在特定的场景下使用帮助管理内存中的数据并支持对数据的断开操作的。DataSet是被所有Data Providers使用的对象,因此它并不像Data Provider一样需要特别的前缀。 SqlDataAdapter类某些时候你使用的数据主要是只读的,并且你很少需要将其改变至底层的数据源。同样一些情况要求在内存中缓存数据,以此来减少并不改变的数据被数据库调用的次数。Data adapter通过断开模型来帮助你方便的完成对以上情况的处理。当在一单批次的对数据库的读写操作的持续的改变返回至数据库的时候,Data adapter 填充(fill)DataSet对象。data adapter包含对连接对象以及当对数据库进行读取或者写入的时候自动的打开或者关闭连接的引用。另外,data adapter包含对数据的SELECT,INSERT,UPDATE和DELETE操作的command对象引用。你将为DataSet中的每一个table都定义data adapter,它将为你照顾所有与数据库的连接。所有你将做的工作是告诉data adapter什么时候装载或者写入到数据库。 DataTable类DataTable 是一个数据网格控件。它可以被应用在 VB 和 ASP 上。它无须代码就可以简单的绑定数据库。它具有微软风格的用户界面。 DataTable的实例化以及添加列: DataTable dt = new DataTable(); dt.Columns.Add(ID); dt.Columns.Add(Name); DataRow dr = dt.NewRow(); object objs = 1, Name ; dr.ItemArray = objs; dt.Rows.Add(dr); this.dataGridView1.DataSource = dt; 二、数据绑定技术 ASP.NET具有强大的数据绑定功能,所谓的数据绑定是指数据与控件如何相互结合的方式。在ASP.NET中,开发人员可以选择性的绑定到简单的属性、集合、表达式或者是方法。本章将讨论ASP.NET数据绑定的几种方式,并深入的介绍ASP.NET中的功能强大的数据绑定控件5。(一)绑定技术基础数据绑定允许开发人员将一个数据源和一个服务器端控件进行关联,免除了手工编写代码进行数据显示的痛苦。在ASP.NET中,开发人员可以使用声明式的语法对控件进行数据的绑定,而且大多数服务器控件都提供了对数据绑定的支持。根据所绑定的控件的不同或者是所需要绑定的属性的不同,ASP.NET中的数据绑定又可分为单值数据绑定与列表数据绑定。如果需要,开发人员还可定义自己的绑定。(二)单值绑定单值数据绑定允许为控件的某个属性指定一个绑定表达式,可以在声明代码中直接使用绑定表达式进行绑定。单值绑定通常使用如下的语法来指定数据绑定表达式:使用数据绑定并不只限于绑定到数据库中的数据,可以是一个变量,一个表达式或者是一个函数,都可以在表达式中进行指定。但是必须注意,如果绑定类级别的变量或者是函数,必须指定其访问级别为public或者是protected类型。下面新建一个名为DataBinding的ASP.NET网站,在该网站中添加一个名为SingleValueBinding.aspx的网页。在该页面中放一个Label控件,然后使用数据绑定表达式将Label控件的Text属性绑定到当前的日期,声明代码如下所示: asp:Label ID=Label1 runat=server Text= (三)重复值绑定在介绍ADO.NET时,曾经不只一次的将SqlDataReader记录绑定到DropDownList或者是ListBox控件,当绑定到这两种控件后,可以看到并不是只显示了一个单值,而是显示了一个列表,这种绑定方式称为重复值绑定。ASP.NET 3.5的ListBox、DropDownList、CheckBoxList和RadioButtonList这几个列表控件支持列表数据源,但是在同一时刻只能显示单一的属性值在列表中。除此之外,ASP.NET还提供了另外一些功能强大的重复值绑定控件,比如GridView、DetailsView和FormView等等,这些控件可以绑定到集合中的多个值或所有值。重复值数据绑定控件通常具有如图所示的属性,用来绑定的数据源。重复值绑定控件的数据绑定属性属性说明DataSource 包含要显示的数据的数据对象,该对象必须实现ASP.NET数据绑定支持的集合,通常是ICollection。DataSourceID使用该属性连接到一个数据源控件,使开发人员能用声明式编程而不用编写程序代码。DataTextField指定列表控件将显示为控件文本的值,数据源集合通常包括多个列或者多个属性,使用DataTextField属性可以指定哪一列或属性数据进行显示。DataTextformatString指定DataTextValue属性将显示的格式。DataValueField该属性与DataTextField属性类似,但是该属性的值是不可见的,可以使用代码对该属性的值进行访问,比如列表控件的SelectedValue属性。(四)数据源控件在开发ASP.NET应用程序时,可以直接使用ADO.NET访问数据库,获取数据源并绑定到ASP.NET服务器控件,这个过程需要开发人员编写大量的程序代码,ASP.NET2.0以后,提供了一系列的数据源控件,采用声明式编程的方式指定数据源,大大简化了编写ASP.NET数据库应用程序的复杂性。ASP.NET 3.5中包括如下六种数据源控件:SqlDataSource控件:允许开发人员连接到任何具有ADO.NET提供者的数据源,包括SQL Server、Oracle和OLE DB以及ODBC数据源。LinqDataSource控件:提供语言集成查询(LINQ To SQL)数据源。ObjectDatasource控件:该数据源允许连接到一个自定义的数据访问类,对于大型可伸缩性应用程序使用ObjectDataSource是一个较好的办法。AccessDataSource控件:读取写入Access数据库文件(.mdb)。XmlDataSource控件:允许连接到XML文件,提供XML文件的层次结构信息。SiteMapDataSource控件:连接到站点地图文件。(五)数据绑定的页面生存周期当使用ADO.NET编写代码绑定到数据源时,可以控制绑定的时机,如果使用DataSource控件后,了解一下数据绑定的页面生存周期是很有必要的。数据源控件能完成两个关键任务:向连接控制提供数据源数据。向数据源更新在控件中所做的更改。为了理解数据控件如何工作,需要理解数据源控件在页面中的生命周期,当使用数据源控件或者是需要扩展数据绑定模型时是非常重要的。数据绑定控件的产生顺序如下所示:(1)创建page对象。(2)开始页面生命周期,Page.Init和Page.Load事件触发。(3)所有控件事件触发。(4)如果数据源控件中有任何更新,则完成更新行为,并触发数据源控件的Updating 和Updated事件。如果有插入新行,则触发Inserting和Inserted事件。如果有删除行,则触发Deleting和Deleted事件。(5)Page.PreRender事件触发。(6)数据源控件完成查询,并且将查询数据发送到相连接的控件中。(7)页面输出完成并被释放。 (六)SqlDataSource控件SqlDataSource控件与 ADO.NET集成紧密,该控件将调用ADO.NET中的类来访问数据库,获取数据以及更新数据库。使用SqlDatasource可以访问SQL Server、SQL Express、Access、Oracle、DB2以及MySQL等数据源,只要这些数据源具有ADO.NET的提供程序。SqlDataSource简化了ADO.NET中访问数据库必须编写很多代码的繁琐,该控件以一种声明性的方式来定义数据访问,大大简化了ASP.NET开发人员的工作。使用SqlDataSource控件通常分为如下几个方面:(1)连接数据源。(2)执行SQL命令。(3)指定SQL参数。(4)编程控制SqlDataSource控件。(5)使用控件内置的缓存机制缓存数据。 (七)使用参数过滤数据应用程序通常需要跟据用户的响应来动态的组建SQL查询,比如在产品数据表中,可能需要跟据用户的选择只查询指定产品ID的信息。再或者应用程序需要一个主从表式表格,根据用户在主表中的选择动态的显示从表中与主表相关的记录。SqlDataSource提供了多种类型的命令参数,解放了开发人员创建这类应用时的复杂性,使开发人员同样可以通过声明的方式来创建动态查询。Parameters是所有参数对象的基类,该对象具有如下几个属性:ConvertEmptyStringToNull:布尔值,如果设为true,在SQL执行前,如果参数为空则被转换为null。DefaultValue:参数的默认值,如果参数为空(null),则使用DefaultValue定义的值。Direction:指定参数的方向,可选值有:Input、InputOutput、Output和ReturnValue。Name:指定参数的名称,当使用ASP.NET参数时不要使用字符。Size:参数的大小。Type:指定参数的.NET Framework类型。 更新数据和并发处理SqlDataSource具有四个Command属性,分别是:SelectCommand、InsertCommand、UpdateCommand和DeleteCommand,这四个属性都是DbCommand类型的对象,因此将具有CommandText、CommandType等等,可以使用这四个语句执行SQL命令或者是存储过程来完成查询、新增、更新和删除的动作。VS2008提供了一个设计时窗口,如果为SelectCommand指定了一个SQL语句,VS2008能够根据Select语句中的字段动态的生成Insert、Update和DeleteCommand命令,当开发人员在配置Select语句窗口中单击高级按钮后,将会弹出如图所示的窗口。 图1(八)编程执行SqlDataSource命令本节将介绍如何以编程的方式控制SqlDataSource控件,尽管SqlDataSource控件的声明方式己经能够完成大量复杂的工作,但是在一些情况下仍然需要更精细的控制SqlDataSource的运行。SqlDataSource提供了大量的事件和方法,可供编程时调用,当用户在选择、插入、更新以及删除前后都提供了事件处理,如下所示:Selecting:在查询之前触发。Selected:在查询之后触发。Inserting:在插入之前触发。Inserted:在插入之后触发。Updating:在更新之前触发。Updated:在更新之后触发。Deleting:在删除之前触发。Deleted:在删除之后触发。ObjectDataSource控件简介使用SqlDataSource控件声明式的与数据库进行访问非常简单,但是有很多缺陷,一个主要的问题是SqlDataSource与UI层过于紧密,造成以后的维护和修改的因难。ASP.NET提供了另外一个功能强大的数据源控件ObjectDataSource,该控件并不是直接与数据库进行绑定,而是绑定到一个业务对象上。设计大中型应用程序通常需要清晰的层次结构,比如将表示层与业务逻辑相分离,而将业务逻辑封装在业务对象中。这些业务对象在表示层和数据层之间形成一层,从而生成一种三层应用程序结构。ObjectDataSource 控件通过提供一种将页上的数据控件绑定到中间层业务对象的方法,为三层结构提供支持。在不使用扩展代码的情况下,ObjectDataSource 使用中间层业务对象以声明方式对数据执行选择、插入、更新、删除、分页、排序、缓存和筛选操作,使用ObjectDataSource对象的三层结构示意如图14.14所示。创建业务对象类6下面新建一个名为ObjectDataSourceDemo.aspx的页面,本示例将使用ObjectDataSource控件来添加、删除以及更新Northwind数据库中的Products表数据。(1)在ObjectDataSourceDemo.aspx设计视图中放一个GridView控件和一个ObjectDataSource控件。(2)新建一个名为Products的类,使用上述的几条原则来设计一个业务类,由于需要从数据库中提取数据,因此该类将会调用ADO.NET中的类来从数据库中提取产品数据。(3)从工具箱中拖一个ObjectDataSource控件到设计视图,在弹出的任务窗口中选择“配置数据源”菜单项,在选择业务对象下拉列表框中选择Products对象,接下来在定义数据方法中,可以选择四个方法,如图 图 2(九)使用ObjectDataSource更新数据要更新数据,同样需要在业务对象中定义更新的方法,在具体的编写代码之前,先介绍ObjectDataSource控件的一个非常有用的属性DataObjectTypeName。ObjectTypeName中性获取或设置某个类的名称,将该类用于更新、插入或删除数据操作中的参数,而不是从数据绑定控件传递个别的值。也就是说,在编写更新、插入方法时,不用为Products表中一个一个的指定参数,可能直接指定一个具有与Products表中相对应的公共属性的类即可。第二节 功能结构图 图 3 第三节 功能设计 一、登录模块 用户输入信息,实现数据库中用户查询,完成登录功能 二、注册模块 根据用户输入信息,进行注册,对于重名用户提示用户名已被注册 三、搜索模块 根据类别,用户输入信息查询相应的商品,并显示,用户可以通过商品名称、商品分类、价格、日期等信息搜索所需商品 四、货物显示模块 显示数据库中的货物大概信息,根据用户搜索的条件显示相应商品 五、详细信息模块 根据用户选择,显示商品详细信息,并生成验证码,提供用户给货主留言功能,供用户与货主交流 六、货物发布模块 用户可以根据需要,发布自己的商品,将相应信息存入数据库 七、货物管理模块 用户根据自己情况,改变货物名称、描述、价格、图片、状态、类别等属性 八、留言模块 用户可以通过这个平台,给开发商留言,以便开发者更进系统第四节 各个文件及界面 1、文件夹image:系统的图片 2、文件夹photo:商品的图片 3、AddProduct.aspx及AddProduct.aspx.cs:增加货物页面及代码 4、buttom.ascx及buttom.ascx.cs:用户自定义控件,系统底部 5、CreateImage.aspx及CreateImage.aspx.cs:生成验证码 6、Default.aspx及Default.aspx.cs:主页界面及代码 7、LawNotice.aspx及LawNotice.aspx.cs:法律声明页及代码 8、Main.master及Main.master.cs:各个子模块的母版 9、MasterPage.master及MasterPage.master.cs:主页的母版 10、Me.htm:关于我们页面 11、ProductDetails.aspx及ProductDetails.aspx.cs:商品详细信息页面及代码 12、ProductManagement.aspx及ProductManagement.aspx.cs:商品管理页面及代码 13、Reg.aspx及Reg.aspx.cs:注册页面及代码 14、TellUs.aspx及TellUs.aspx.cs:联系我们页面及代码 15、Top.ascx及Top.ascx.cs:用户自定义控件,系统顶部 16、Web.config:系统配置文件第三章 易货系统的详细设计 第一节 数据库设计 数据库设计是项目开发过程中的一个非常重要的环节,数据库设计的好坏影响到系统的效率,合理的设计数据库结构可以提高数据存储效率,保证数据的完整和统一。数据库的设计要进行表的设计,在这个系统中,使用的是SQL Server 2008数据库。根据系统功能需求,建立一个060505217的数据库【79】。一、用户信息表 用户信息表(USER_INFO)中字段有:用户标号(UserID)、用户名(UserName)、密码(Password)、邮箱(Email)、地址(Address)、电话(Telephone)、注册日期(RegionDate)、最后登录日期(LastLoginDate)。用户具体信息如下: 图 4二、商品分类表商品分类表(SORT_INFO)中字段有:商品类别号(SortID)、商品类别名称(SortName),商品分类的具体定义如下: 图 5三、商品信息表商品信息表(PRODUCT_INFO)中的字段有:商品编号(ProductID)、商品名(ProductName)、价格(UnitPrice)、发布日期(IssueDate)、描述(Description)、图片(Url)、商品类型号(SortID)、货主名(UserName)、想换物品(Change)、货物状态(State),商品信息的具体定义如下: 图 6四、商品留言表商品留言表(REVIEW)中的字段有:留言号(ReviewID)、商品号(ProductID)、留言时间(ReviewDate)、留言内容(ReviewContent)、留言者(UserName),商品留言表的具体定义如下: 图 7五、联系我们表联系我们表(TELLUS)中的字段有:留言号(ContentID)、主题(Tittle)、内容(Body)、留言者(UserName)、留言时间(CreatTime),联系我们表具体定义如下: 图 8第二节 详细实现完成数据库设计后,便可以进行系统的开发了。本节将从用户控件、主页母版、注册页面、主页、生成验证码、添加货物、货物详细信息、货物管理等功能出发,介绍各个功能的实现。一、top用户控件 若是用户登录,将用户名存入Session对象中,根据SessionUserName的内容显示欢迎用户或者欢迎游客,显示用户最后登录时间,对于游客,则显示当时的系统时间。代码如下10: if (SessionUserName != null) Label1.Text = SessionUserName.ToString(); Label2.Text = SessionLastLoginDate.ToString(); else Label1.Text = 游客; Label2.Text = DateTime.Now.ToLongTimeString(); 对于登录的用户可以跳入货物管理页面,对于未登录用户提示登录,代码: if (SessionUserName != null) Response.Redirect(ProductManagement.aspx); else Response.Write(alert(请先登录!);this.location=Default.aspx); 二、主页母版 实现登录功能,连接数据库,在数据库中根据用户输入的用户名跟密码查询数据库中是否存在记录,连接数据库采用ADO.NET方法,对于错误的情况给出提示,并将用户相关信息填入Session对象,留着后面修改用户信息用11。 string userName = this.tbUserName.Text.ToString(); string passWord = this.tbPassword.Text.ToString(); SqlConnection con = new SqlConnection(Integrated Security=true;server=.sqlexpress;database=060505217); string strSql = select * from USER_INFO where UserName= + userName + and Password= + passWord+; SqlCommand com = new SqlCommand(strSql, con); con.Open(); object num = com.ExecuteScalar();/获得表的第一行第一列值 object类型 if (num = null) Response.Write(alert(密码错误!);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业CT扫描内部结构成像标准
- 2025年林业站员年终总结
- 2025年特警大队大队长年终总结
- 2025年福州市鼓楼区国际广场酒店市场价值评估项目委托合同
- 2025年下半年吕梁市中阳县招聘驻矿安全监管人员招聘易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年吉林长春双阳区事业单位招考(79人)易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年吉林省吉林市事业单位招考1535人易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年合肥等6市保险行业协会招考秘书长易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年台州市天台县公安局编外合同工招考易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年厦门市卫生事业单位招考编制内医学高层次和急需紧缺人才易考易错模拟试题(共500题)试卷后附参考答案
- AIAgent现状与发展趋势
- 肉联厂消防安全培训内容课件
- 智能医疗自动售卖机合作租赁与药品配送服务合同
- 围墙工程施工方案(完整版)
- 清理社区小广告课件
- 2025年搭建活动板房协议书
- 经济系毕业论文开题方向
- 沙包的来源课件
- 人工智能与核医学的深度融合与应用探索
- GB/T 27043-2025合格评定能力验证提供者能力的通用要求
- 2025年医疗器械质量管理体系内审员培训考试在线题库含答案
评论
0/150
提交评论