JSJ01-078@ASP.NET技术在网站开发设计中的研究与开发(论文+源代码+开题报告)
收藏
资源目录
压缩包内文档预览:
编号:507991
类型:共享资源
大小:1.75MB
格式:ZIP
上传时间:2015-11-10
上传人:QQ28****1120
认证信息
个人认证
孙**(实名认证)
辽宁
IP属地:辽宁
12
积分
- 关 键 词:
-
毕业设计计算机
- 资源描述:
-
JSJ01-078@ASP.NET技术在网站开发设计中的研究与开发(论文+源代码+开题报告),毕业设计计算机
- 内容简介:
-
毕业设计 (论文 )说明书 题 目: ASP.NET 技术在网站设计中的 研究与开发 nts 毕业设计(论文)中文摘要 ASP.NET 技术在网站开发设计中的研究与开发 摘 要: 基于 Microsoft . NET 环境的 ASP. NET 技术,为开发功能强大的动态网站提供了一种简单、高效的途径。 正文阐述的是 ASP. NET 作为一种全新的动态网站开发技术,它是通过大量使用组件技术,将 Web 浏览器与 Web 服务器之 间的网络通信完全的包装起来,在 ASP. NET 中,动态网站开发技术已经变为利用组件搭建“基于 Web 的应用程序”。论文还阐述了网站开发技术的现状,通过对各个技术的系统比较从而对 ASP.NET 技术做了较深入的研究,并结合研究情况开发设计了一个网上书店系统。该系统的基本功能已实现,普通用户进入系统后,可以查看商品信息,并购买商品;管理员可以添加新的商品信息并可以确认核实客户提交的订单。 关键词: ASP.NET 动态网站开发技术 组件 网上书店 nts毕业设计(论文)外文 摘要 Development and Research of ASP.NET Technology in Designing Web Site Abstract: ASP.NET technology based on Microsoft.NET environment provides a simple, effective means to establish multifunctional, dynamic web sites. This thesis is about ASP.NET a whole new technology to establish dynamic web sites. By using plentiful component technologies, packs it up the network communications between Web Explorer and Web Server. In ASP.NET, the technologies of establishing dynamic web sites are turning to build applications based-on web by component. And, this thesis also accounts for the actuality of web development technology. I made an in-depth study by comparing with various skills, and then designed a system of bookstore online. All the basic functions of the system have been achieved. A common user enter the system, he could browse commodity information and purchase. Administrator can add new commodities and verify bills that clients made. Keywords: ASP.NET; Dynamic website developing technology; Component; Bookstore online nts 目 录 1 引言 1 1.1 问题定义与内容简介 1 1.2 研究背景及研究意义 1 1.3 可行性分析 2 1.3.1 技术可行性研究 2 1.3.2 经济可行性研究 3 1.4 论文各章内容介绍 3 2 课题研究分析 4 2.1 网站开发技术研究 4 2.1.1 WEB 开发技术的发展 4 2.1.2 技术比较 5 2.1.3 ASP.NET 技术研究 7 2.2 ASP.NET 技术在实例中的应用 10 2.2.1 ASP.NET 内置对象的应用 10 2.2.2 页面控件的应用 12 2.3 ASP.NET 开发工具 16 3 ASP.NET 开发网站应用示例 18 3.1 方 案研究 18 3.2 业务流分析 18 3.3 数据流分析 19 3.4 数据字典 21 3.4.1 数据流分量(即数据元素) 21 3.4.2 数据流 21 3.4.3 数据存储 22 3.4.4 数据处理 22 4 系统设计及各功能模块的实现 24 4.1 系统设计 24 4.1.1 系统总体功能结构 24 4.1.2 系统数据模型设计 24 4.2 详细设计 28 4.2.1 商品浏览模块 29 4.2.2 商品查询模块 30 nts4.2.3 购买商品(购物车)功能模块 31 4.2.4 订单结算功能模 块 33 4.2.5 用户查看所有订单功能模块 33 4.2.6 管理员添加商品功能模块 34 4.2.7 管理员查看订单功能模 块 35 5 应用演示 37 5.1 用户部分 37 5.2 管理员部分 38 6 研究成果评价 40 6.1 研究成果 40 6.2 研究不足和解决方案 40 结 论 41 致 谢 42 参 考 文 献 43 nts毕业设计(论文) 第 1 页 共 43 页 1 引言 上个世纪 60 年代诞生的互联网,在近十几年的时间里得到了迅猛的发展,其主要的原因是 WEB 技术的出现。它将世界各地的信息链接起来,使互联网成为最大的信息载体,使地球变的像个小村子,使信息共享和流通的能力延伸到了我们的桌面上。 WEB 技术是互联网的核心内容, WEB 因为具有音频、视频技术,内部交互和易于管理而受到个人和企业的青睐。随着 WEB 的逐渐发展和成熟, web 技术也在逐渐的发展,从 HTML 到 CGI,到 3P( ASP、 JSP、 PHP),再到现在的 ASP.NET,已经经过了几个阶段的发展。 1.1 问题定义与内容简介 ASP.NET 网络服务体系架构为使用 ASP.NET 建立网络服务提供了一个高级可编程模板。虽然建立网络服务并不需要使用网络服务平台,但是它具有许多的优点将简化开发过程,并且它使用的编程模型对用 ASP 或 VB工作的开发人员来说是很熟悉的。使用这个可编程模型,开发人员不需要理解 HTTP、 SOAP 或其它任何网络服务规范。 本课题的主要目的是对网站设计的相关技术进行理论研究,比较 ASP.NET 技术的相关特点,并在对各种技术进行系统分析和研究的基础上,借鉴现有系统的一些经验,开发一网站实现相关管理功能。并且 通过学习 ASP.NET 技术并查阅大量关于网站设计技术的文献资料,比较各种技术的优越性,汇总形成相关 文档。 在研究学习的基础上,结合相关资料,设计出简洁的具有用户注册登录、信息查看、信息查询等功能的系统。网站实现的基本功能是:( 1) 信息查看:普通用户和管理员登录系统后可以进行信息查看;( 2)信息查询:用户可以登录系统后进行信息查询。 1.2 研究背景及研究意义 随着个人电脑和 Internet 的普及推广, Web 技术得到了迅猛的发展,人们开始越来越依赖网络:企业通过网络可以更有效、便捷的发布信息和推广自己新的产品;个人通过网络可以跟自己的朋友聊天、写信,可以查看新闻,可以在网上娱乐,甚至可以不用出户就可以购 买自己喜欢的商品等等,网络带来无尽的便捷和乐趣。设计出好看,适用的网站就成为必要的,现在用于网站设计、开发的技术有很多,譬如 ASP、 JSP、 ASP.NET 等等。 其中 JSP(Java Server Pages)是由 Sun Microsystems 公司倡导、许多公司参与一起建立的一种动态网页技术标准。它是在传统的网页 HTML 文件中插入 Java 程序段和 JSP 标记,从而形成 JSP 文件。 JSP 与 Java Servlet 一样,是在服务器端执行的,通常返回该客户端的就是一个 HTML 文本,因此客户端只要有浏览器就能浏览。 ASP(Active Server Pages 活动服务器页面 )是一种功能强大的运用于服务器端的脚本编程环境,但是只能用 VBScript 或者 JavaScript 这样的非模块语言来编程,而且大量的 HTML代码和 VBScript、 JavaScript 代码混合在一起,使得程序员需要修改程序的时候比较困难。 而 ASP.NET 技术是 Microsoft 公司推出的新一代动态 Web 开发技术。 ASP.NET 不同于ASP 和 JSP,它是建立在 .NET Framework 之上,提供了更易于编写而且结构清晰的代码,它使用 VB.NET 和 C#等模块化语言编写程序,提高了代码的再利用性和共享性。 ASP.NETnts毕业设计(论文) 第 2 页 共 43 页 在结构上几乎完全是基于组件和模块化的, Web 应用程序的开发人员使用这个开发技术可以实现更加模块化的、功能更强大的应用程序。 ASP.NET 技术在效率、可重用性及代码量上较 ASP 和 JSP 都有明显的优势。 使用 ASP.NET 技术,开发人员不需要理解 HTTP、 SOAP 或其它任何网络服务规范。开发人员用 ASP.NET 生成一个扩展名为 .asmx 的文件,并把此文件配制为网络应用程序的一部分,就建立起了一个网络服务。 asmx 文件包含对在其它地方定义的 受控类的引用,或者包含这个类的定义。这个类是由 ASP.NET 提供的 WebService 类所派生。公有的类方法在标记上 WebMethod 属性后,就会成为网络服务方法,把 HTTP 请求发送到 asmx 文件中的 URL 后,这些方法就会被调用。你不必手工为你的网络服务建立一个契约。当被调用者请求时, ASP.NET 检查类的元数据,以自动生成 SCL 文件。客户可通过 SOAP, HTTP GET 和 HTTP POST 提交请求。对方法和参数进行编码的约定是:对 HTTP GET,将被编码为查询字符串;对 HTTP POST,将被编码为表 单数据。 HTTP GET 和 HTTP POST 的机制不如 SOAP 有力,但是它们使得客户在访问网络服务时不必支持 SOAP。 ASP.NET 网络服务模型假定了一个无状态服务结构。无状态结构通常比有状态结构更具可扩展性。每次收到一个服务请求后,就生成一个新对象,请求被转化为一个方法调用,当该方法调用返回时对象被销毁。如果这些服务需要跨请求维护状态,那么它们将使用 ASP.NET 状态管理服务。基于 ASP.NET 的网络服务在网络应用程序模型中运行,因此它们得到了该模型的所有安全、配制和其它优点。 ASP.NET 网络服务还提供了一个为在 SCL 文件中描述的网络服务生成分类的受控代理工具。代理生成器把 SCL 文件中描述的消息映射成受控类中的方法。代理对应用程序代码隐藏了所有的网络和引导设备,因此使用网络服务看起来就像使用其它受控代码一样。代理将优先使用 SOAP 链接网络服务,但是它同样支持 HTTP GET 和 HTTP POST 机制。因此 HTTP GET 和 HTTP POST 同样也能被使用。 网络服务为在 Internet 上绑定应用程序提供了一个利用现存体系架构和应用程序的简单的、灵活的、基于许多标准的模型。网络应用程序很容 易与当地开发的服务或已存在的服务集成在一起,而不用考虑开发平台、开发语言或使用的对象模型,以用于实现任何组成的服务或应用程序。 Microsoft .NET 框架在现有开发人员技巧之上,提供了一个应用程序模板和关键技术,用于简化安全、可靠、可扩展、高可用性的网络服务的建立、部署和不断的发展。 1.3 可行性分析 1.3.1 技术可行性研究 课题主要是理论研究,研究 ASP.NET 技术在网站开发中的应用,关键是要查阅大量的关于 ASP.NET 技术和其他网站开发技术方面的文章和书籍。学校图书馆有大量关于这方面的书籍 可以借阅,另外在互联网上也有关于这方面的大量论文可以查阅。 另外网站的设计主要使用的是 ASP.NET 技术, .NET Framework1.1 框架作为微软公司已经比较成熟的产品,现在越来越多的网站开发设计都选择它。 nts毕业设计(论文) 第 3 页 共 43 页 1.3.2 经济可行性研究 课题 研究的是 ASP.NET 技术,设计开发的电子商务网站在 PC 机上就可以实现,不要考虑其他的设备。也为以后网站设计开发编程技术的选择提供了更多的技术支持。 1.4 论文各章内容介绍 论文共分为六章,由浅至深的阐述了研究的结论并结合实例进行了说明。 第一章简要的介绍了 Microsoft .NET 框架,提出了课题研究的背景,并对研究课题做了调研及可行性分析。 第二章主要介绍了 WEB 技术的发展,简单介绍了 ASP, JSP 和 PHP 技术,详细说明了 ASP.NET 技术,并将各种网站开发技术做了深入比较。 第三章全面介绍了对实例系统进行总体设计的方案。 第四章介绍系统的详细设计和各功能模块的设计及实现 第五章介绍系统的应用演示,分别以用户和管理员的身份进行了演示分析。 第六章介绍研究成果的评价及其不足的解决方案 nts毕业设计(论文) 第 4 页 共 43 页 2 课题研究分析 2.1 网站开发技术研究 2.1.1 WEB 开发 技术的发展 WEB 程序初期,网站组成是一系列静态的网页,这种程序只允许用户浏览网站的信息,而不能和网站进行交互 (即静态网页 ),这就大大制约了商业的经营活动。为此, CGI 技术出现,基本弥补了不能交互的缺点,是技术上的一种突破,但用户在使用 CGI 程序时, CGI为每个用户分配一个进程,进程是资源分配的基本单位,这样使资源不能得到完全很好的利用,并且浪费严重。由于计算机资源的有限性,限制了使用网站的用户的数量,导致用户使用中速度相对过慢,不能满足需求。与此同时 Microsoft 公司和网景公司均看到了 CGI的不足,为 此分别设计的一套 API,分别是 ISAPI 和 NSAPI,这两套 API 均采用线程机制,每个用户均使用一个线程与网站进行交互,他们的出现使得每个语种如 DELPHI、 VB等均可以设计 web 应用程序, WEB 程序获得飞速的发展。但 ISAPI 和 NSAPI 有两个缺点 :一是不太稳定,二是要求程序的设计水平较高不利于普及。 1995 年 java 出现后给网站设计带来了曙光, java 是一个跨平台的程序设计语言,以其一次编译,处处运行的优势,迅速推广。与此同时网站的软件技术出现了 ASP、 PHP,JAVA 也发展出一个分支 JSP,我们一般称 之为3P。 3P 的出现大大降低了网站设计的门槛,为网站普及起着不可磨灭的贡献。 3P 的技术各有千秋。 ASP 是嵌入在 HTML 中的一种服务器端编程的 WEB 开发技术,即客户端请求网页时 ASP 文件先在服务器端编译执行,再以 HTML 格式传送给客户端浏览器显示,因此客户看不见 ASP 文件,程序的保密性较好。 ASP 使用的脚本语言是可扩充的,不仅可以使用默认的 VBScript 语言,也可以使用 JAVA Script 或 JScript,通过 plug-in的方式还可以使用 Perl、 TCL 等第三方脚本语言。微软还提供了 InterDev 这 样的 ASP 开发工具。用户在开发的时候可以使用 VB/VC 开发 ActiveX 控件,并借助微软的组件技术 COM来实现几乎所有的 Client/ Server 方式下具有的功能。但是它所使用的语种不是完全的面向对象式语言,不利于开发大型网站程序,且运行速度较慢。 PHP 是植根于 Unix 或 Linux 的一种网站开发技术,由于 Unix 和 Linux 用于大型服务器上,寻常百姓很少问津,到近些年 Linux 开始推广才逐渐被人们所认识。和 ASP 一样是在服务器进行编程的,不过 PHP 是 GNU 标准的自由软件,不仅它是免费的,和其配合使用的 Apache Server 、 My SQL 数据库也是免费的,其源代码也是向外公开的。 PHP 还具有跨平台性,在 Window98, NT, Linux, Unix 和 Macintosh 等环境下均能运行,而且代码可以重用。由于采用类似 C 和 Perl的语言格式, PHP 含有相当丰富的函数库,上载文件、存取数据库中的二进制图片数据、作图、 XML 解析等功能的实现,只需借助某个或某几个函数即可完成,而不像 ASP 那样需要引入专门的控件才可实现。 PHP 也有其不足。相对 ASP来说, PHP 的自由软件身份使得自身的发展得不到颇具实力的软 件开发公司的支持,其发展具有不定性,相应的参考材料、技术支持也较匾乏。它的类似 C 的语言风格,使它不如ASP 来得容易掌握此外, PHP 提供的数据库接口函数也不统一,在访问数据库时不如 ASP那么方便。 nts毕业设计(论文) 第 5 页 共 43 页 JSP 是由 Sun 公司推出的非常类似与 ASP 的一种动态网页技术标准。它也提供了在HTML 代码中混合程序代码,由语言引擎进行解释执行的能力。 JSP 使用的是成熟强大的JAVA 语言。客户端请求 JSP 编写的页面时,代码首先被转换成 JAVA 源文件,再编译成支持 HTTP, FTP 等网络协议的 class 文件 (即 Servlet),并由 JAVA 虚拟机执行。这种编译操作仅在对 JSP 页面的第一次请求时发生,虽然首次调用需几秒的编译加载时间,但后续请求只需调用服务器端缓存中的 Servlets 就可以了,比起每次请求都要解释执行的 ASP 代码要快。相对于 ASP 和 PHP 来说, JSP 在跨平台可重用性和安全性上面还是有很多独到之处的。 3P 有一个共同的缺点,就是 HTML 网页代码和脚本混杂,大大增加了网站开发和维护的难度 ,另外也由于微软开发一种能 JSP 相抗衡的新技术, ASP.NET 技术的出现基本改变了这些。 ASP.NET 技术使用完全的面向对象语 言,网页与程序分离有利于更好的设计程序,使得代码更简洁、易于编写,不仅提高了重利用性和共享性,还提高了可调度性、可测量性、安全性和可靠性 ;同时,对不同的浏览器提供了更好的支持。 ASP. NET 能使开发人员创造出更加动态而且伸缩性更强的应用程序,这种应用程序能够更好地满足公司的商业需求,并提供一个更加丰富的开发环境。在兼容以前设计习惯的基础上采用完全的可视化设计,使 windows 程序和网站程序的风格区别缩小,使用任何语种都只要遵守 .NET 规范,都可以使用 ASP.NET,使得技术的推广速度相当快。 2.1.2 技术比较 ASP 和 JSP 都是使用的脚本语言混合 HTML 编程,特别是 ASP 的脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题: 1、代码逻辑混乱,难于管理:它使用的是脚本语言混合 html 编程,所以很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。 2、代码的可重用性差:由于是面向结构的编程方式,并且混合 html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。 3、弱 类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来会方便一些,但相对于它所造成的出错几率就远远得不偿失的。 以上是语言本身的弱点,在功能方面 ASP 同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上甚至还远远比不上 PHP/JSP,在纠错 /调试功能的完善,这点上 ASP/PHP/JSP 差不多。 下面是 ASP 和 ASP.NET 在具体操作编程上有什么不同。在 ASP 程序中,当需要使用 Server 对象的 Create Object 方法来建立一个类实例的时候,首先要声明一个变量 fso,之后将变量 fso 赋予 FileSystemObject 的对象( FileSystemObject 对象可以在 Scripting 这个库中找到)。如果想要 ASP 代码得以正常运行,还必须确定相关的 DLL 文件已经被安装并且注册到服务器。当 C#运行库被安装的时候, FileSystemObject 对象是会被自动注册的。但是如果想使用第三方开发的组件或者使用自己创建的组件,就需要小心安装并且注册你的组 件了。其具体的代码如下: nts毕业设计(论文) 第 6 页 共 43 页 Dim fso Set fso = Server.CreateObject(Scripting.FileSystemObject) 而在 ASP.NET 中,在声明一个变量的同时,可以指定它的类型并且初始化这个变量 为了引用一个类,需要使用这样的表示方法:名称空间 .子名称空间 .类。即如: Scripting.FileSystemObject fso = new Scripting.FileSystemObject(); 在上面的代码中,引用了 FileSystemObject 这个类,而 FileSystemObject 这个类可以在名称空间 Scripting 中找到。上面的名称空间实际上只是假设的一个名称空间,它并不存在于 .NET 的架构当中,所以上面的代码实际上是无法运行的。 由此可以看出 ASP 和 ASP.NET 技术的区别了。 ASP.NET 使用的面向对象的语言,而不是一种脚本语言,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的 ASP 的那些弱点。封装性使得代码逻辑清晰,易于管理,并且应 用到 ASP.NET 上就可以使业务逻辑和 Html 页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性极大的提高,你可以通过继承已有的对象最大限度保护你以前的投资。并且 C#和 C+、 Java 一样提供了完善的调试 /纠错体系。 JSP 同样是实现动态网页的一个利器。由于他的脚本语言是 JAVA,所以继承了 JAVA诸多优点。 ASP.NET 和 JAVA 的具体的区别。其重要体现在: 1) 面向对象性 : ASP.NET 将 C#作为一种面向对象语言,在很多方面来看,微软将 C#成为与 Java 相似的语言。 C#另一个有趣的地方是所有对象都自动变成为 COM 对象。如果 C#能取得很大的市场占有量的话,那么它将给 ASP.NET 带来类似于 Java 的功能,并且具备更快的性能,因为它可以和 Windows 环境紧密集成。 C# 是 ASP.NET 开发中一个最重要的功能,这也是 .NET框架的一个重要组成部分。 2) 数据库连接: 在 ASP 中的一个亮点是它使用 ADO 对象, ODBC, OLE-DB 和事务处理管理器,因此 ASP Web 数据库应用开发特别简单。 ASP.NET 发展了更多的功能,因为有了 ADO.NET, ADO.NET带来了更强大更快速的功能。 JSP 和 JDBC 目前在易用性和性能上同 ASP/ADO 相比已有些落后,当新版本 ASP.NET/ADO.NET 出现后这样的差别就更明显。 3) 大型站点应用: ASP.NET 将对大型站点 (web farms)有更好的支持。事实上,微软在这方面付出了巨大的努力。 ASP.NET 可以让你考虑到多服务器 (multiple servers)的场合,当你需要更强大的功能时,仅仅只需要增加一台服务器。整个 .NET 框架已经充分地提供了这个方法。ASP.NET 提供了外部会话状态 (external session state)来提供内置式 web farm 的支持。nts毕业设计(论文) 第 7 页 共 43 页 另外,由于请求的各组件相互间经过了充分的优化,所以速度很快。 于是 ASP.NET 现在可以在大型项目方面与 JSP 一样具有等同的能力。 而 ASP.NET 还有价格方面的优势,因为所有的组件将是服务器操作系统的一部分。对于 JSP,需要购买昂贵的应用服务器群来达到同样的目的。 4) ASP.NET 还提供更多的其它方面的新特性,例如: *内置的对象缓存和页面结果缓存。 *内置的 XML 支持,可用于 XML 数据集的简单处理。 *服务器控制提供 了更充分的交互式控制。 可以看出,由于 JSP 模型是在 ASP 之后,在许多方面借鉴了 ASP,如: session、application 等对象。同时 JSP 使用灵活而强大的 JAVA 语言,而不是低效的脚本语言,使得 JSP 与 ASP 相比,具有明显的优势。但是, ASP.NET 又是在借鉴 JSP 的优点后推出的,这样 ASP.NET 又具有后发的优势。 2.1.3 ASP.NET 技术研究 ASP. NET 隶属于 Microsoft. NET 框架,是由 .NET 框架提供的编程类库所组成的,它提供了 Web 应用程序模型,并采用面向对象的思 想 模块化与组件化的技术而构建。 那说到 ASP.NET,就不得不先了解下 .NET,其全称为 Microsoft .NET。 Microsoft .NET平台包括用于创建和操作新一代服务的 .NET 基础结构和工具;可以启用大量客户机的 .NET User Experience;用于建立新一代高度分布式的数以百万计的 .NET 积木式组件服务;以及用于启用新一代智能互联网设备的 .NET 设备软件。 Microsoft .NET 产品和服务 -包括 Windows.NET,连同建立积木式服务的核心集成套件; MSNTM .NET;个人 订购服务;Office.NET; Visual Studio .NET;以及用于 .NET 的 BCentralTM。 ASP. NET 页面 .NET 框架 CLR .NET 类库 ASP. NET 状态管理器和 cache IIS ISAP 过滤器 aspx 或asmx 图 2.1 ASP.NET 体系结构图 nts毕业设计(论文) 第 8 页 共 43 页 上面的图就是 ASP.NET 的基本体系结构,其中 .NET 框架提供 CLR( Common Language Runtime 即通用语言运行时)编译和管理程序页面中代码的执行,类库则是提供了一系列的用于处理请求和生成响应的公共代码,程序员可以直接调用该类库。 ISAPI(Internet Server Application Programming Interfaces)过滤器是 ASP. NET 与 IIS 通信的接口,其中的应用程序作为 DLL 来实现,并且加载到 Internet Server 的进程空间,这样可以保证应用程序更快地执行。 ASP. NET 本身包含一个缓存 cache 和一个状态管理器,其中 cache 用来缓存经常使用的 Web 页面,目的是提高服务性能。状态管理器用来跟踪用户的会话状态信息,目的是进行更加完美的数据交互。 在数据库连接上 ASP. NET 是通过 ADO. NET (Active Data Object 动态数据对象 )上的Managed Provider(管理供应商 )所提的应用程序 编程接口 (API)来实现数据源的数据访问,包括 OLEDB 和 ODB(以开放性数据库互连)所支持的数据库。下面来说下 ADO.NET 的主要的特性: 互操作性: ADO.NET 模型最大限度地利用了由业界大型的外观标准 XML 提供的灵活性。 ADO.NET 使用 XML 在组件之间以及层之间传送数据集。任何支持 XML 格式的组件都可以处理数据,而且接收数据的组件也不一定是 ADO.NET 组件。发送或传送数据集的组件只需要向数据集的目的地发送数据集,而不用担心接收组件是如何去执行的,请求数据集的组件也就是目的组件可以像 Visual Studio 应用程序或其他应用程序那样执行接收任务。但是,很重要的一点是:接收组件应该支持 XML 格式。 可维护性:可维护性现在已是评价一种软件程序的标准,可维护性的高低将直接影响应用程序的升级维护的操作负担。应用程序的维护我们期待的是提高其性能,在次,不用重新设计,而是调用应用程序之后层次的增加。如果原来的应用程序是在 ADO.NET 中使用数据集执行的,那么这种转变相对就容易的多,在 ADO.NET 中,层之间的通信相对简单,这是因为层是通过 XML 格式的数据集传送数据的。下面的是一个简化了的 ADO.NET工作原理图 : 可编程性: ADO.NET 模型使用类型化的程序设计操作对象。在类型化程序设计中,应用 程序的数据集 应用程序的数据集 XML 数据集 数据集命令 数据 图 2.2 ADO.NET 工作原理图 nts毕业设计(论文) 第 9 页 共 43 页 程序设计环境或程序设计语言本身识别对象的类型,这对用户来说是很重要的。对那些没有或者有很少编程经验的终端用户来说,对代码的理解也是很容易的。而且,在非类型化的程序设计中,如果开发人员偶尔发生拼写错误,那么将产生一个运行时错误。而在类型的数据集中,误写导致的语法错误会在编译时就检测出来。 性能:在 ADO 中,当使用 COM 组件技术跨层传送数据时,可以采用已短开连接的记录集形式,这些值必须转换为 COM 能够 辨认的数据模型,这样就降低了性能。而 ADO.NET能使用已断开连接的数据体系结构,这反过来会使得伸缩性更加的容易实现,因为这减少了数据的装载量(不需要任何的数据转换)。因此,在 ADO.NET 模型中,任何对象都可以在客户端进行处理,这样就提高了其性能。 可伸缩性:基于 WEB 的以数据为中心的应用程序需要多个用户同时访问数据库,这增加了对访问数据库的要求,使得可伸缩性成为最主要的特征之一。使用资源(比如数据库连接和数据库锁定)的应用程序。不支持多用户同时访问数据,这是因为用户对有限资源的要求最终会超出它们的供应能 力,因为 ADO.NET 使用了已断开连接的数据访问,所以应用程序不用长时间保持数据库锁定状态或者数据库连接激活状态。由此, ADO.NET可以通过鼓励程序员保存有限的资源来提供可伸缩性,并允许多用户同时访问数据。 ADO.NET 对象模型主要有两个层次: 已连接的层:由管理提供程序组成的类组成 已断开连接层:根植于 Dataset 自从 Internet 出现以来,网络安全一直是人们关注的问题。其中的原因包括在 Internet上传送敏感数据,在 Web 应用程序之间交换敏感数据以及黑客的威胁等。对于 Web 应用程序的开发人员 和管理员来说,安全是个重要的问题,也是个令人头痛的问题,因此需要格外细致的进行规划和设计。在 ASP.NET 应用程序中,安全性涉及三个基本的操作:身份验证,授权和模拟(冒名顶替)。 身份验证( Authentication):这是验证用户身份的有效过程,以便决定是否允许通过,通常,身份验证就是验证用户名和密码的过程,除了这种常见的身份验证方式以外,还有比较复杂的验证方式。具体来说身份验证有三种形式:匿名验证,基本验证和集成的Windows 验证。其中匿名验证即允许用户在不用通过用户名和密码的情况下浏览网站;基本验 证即是我们平常说的用户和密码验证了,这中方式需要对密码进行加密,不然很可能被未授权的用户非法使用,但是加密技术一直不是很理想,所以这种验证方式的使用一直没被保密性较强的 WEB 应用程序使用。集成的 Windows 验证,除了满足基本的验证的条件外,用户还必须是有效的 Windows 用户。在这种模式下, IIS 服务器将用 Windows 域名控制器验证用户名和密码。 授权( Authorization):这是确保允许拥有有效身份的用户只能访问授予访问权限的那些资源的过程。我们可以对 IIS 服务器进行配置可以控制用户对资源的访问 ,通过标记网站上可允许的操作可以控制对 IIS 网站的访问权限。 模拟( Impersonation)当请求从 IIS 传递到应用程序时,通过使用模拟, ASP. NET 应用程序可以选择以这些应用程序当前正为之操作的客户的身份执行。通常这样做的原因是nts毕业设计(论文) 第 10 页 共 43 页 为了避免在 ASP. NET 应用程序代码中处理身份验证和授权问题。 在 WEB 服务上开发人员可以用 ASP. NET 生成一个扩展名定为 .asmx 的文件,并把此文件配制为网络应用程序的一部分,就建立起了一个网络服务。 asmx 文件包含对在其他地方定义的受控的类的引用,或者包含这个类的 定义。这个类是由 ASP. NET 提供的WebService 类所派生。公有的类方法在标记上 WebMethod 属性后,就会成为网络服务方法,把 HTTP 请求发送到 asmx 文件中的 URL 后,这些方法就会被调用。网络服务为在 Internet上绑定应用程序提供了一个利用现存体系架构和应用程序的简单的、灵活的、基于许多标准的模型。网络应用程序很容易与当地开发的服务或己存在的服务集成在一起,而不用考虑开发平台、开发语言或使用的对象模型,以用于实现任何组成的服务或应用程序。 2.2 ASP.NET 技术在实例中的应用 实例 是一个 BtoC 的电子商务网站,在网站设计中使用了 ASP.NET 一些关键技术 2.2.1 ASP.NET 内置对象的应用 ASP.NET 有七个主要的内置的对象,分别是: 对象名 对象说明 Page 用于设置与网页有关的属性、方法和事件 Request 从浏览器(用户端)获取信息 Response 发送信息到浏览器 Server 提供服务器端的属性和方法 Session 存储单个客户端的信息 Application 存储客户端的共享信息 Exception 捕捉 ASP.NET 的错误,返回错误信息 Page 对象最主要的事件有: Init.Load 和 UnLoad。当进行网页初始化时触发 Page 对象的 Init 事件,接着加载网页并触发 Page 对象的 Load 事件,然后如果包含其他服务器控件事件的时候,当满足发生条件则触发相应服务器控件的事件,最后离开时触发 Page 对象的UnLoad 事件。在每个页面文件里几乎都可以找到 Page 对象的 Load 事件和 Init 事件。 private void Page_Load(object sender, System.EventArgs e) /如 果客户机上本商城的 Cookie 存在,则根据该 Cookie 显示个性化的顾客欢迎信息 if (Request.CookiesIStore_UserName != null) WelcomeMsg.Text = 欢迎 + Request.CookiesIStore_UserName.Value + 来到网上商城! ; nts毕业设计(论文) 第 11 页 共 43 页 private void Page_Init(object sender, EventArgs e) InitializeComponent(); 这是 Default.aspx(首页)中的 Page 对象的 Load 事件和 Init 事件,其中 Cookies 存储了客户信息,用来显示个性话的客户欢迎信息 。 private void Page_Load(object sender, System.EventArgs e) /从传到该页面的请求对象的参数集合中获取 GoodsID int GoodsID = Int32.Parse(Request.ParamsGoodsID); /获取商品的详细信息 IStore.IStoreDBO GoodsDetail = new IStore.IStoreDBO(); IStore.GoodsDetails
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。