第二个灵魂 发表于 2015-1-16 23:49:41

ASP网页设计ASP 3.0初级编程(四十四)

想法是和程序员的想法不一样的.至于为什么.大家去想一想.跟心理学有关的编程|初级第10章ASP与客户端数据

在一本ASP专著中会商客户端数据,这与服务器真个ASP编程是不是冲突?情形并不是云云,由于我们至今还没有碰着只处置服务器端编程的ASP程序员。固然ASP是一项服务器端手艺,但能够设想,编程职员不成能仅仅利用ASP举行编程。处置ASP编程的Web开辟职员,仍旧必要与客户端数据举行交互。
因而,环绕着ASP构建一个使用程序时必需思索全部使用程序的情形,这也意味着必需思索客户端。为了取得一个运转优秀、疾速呼应的使用程序,必要很好地利用客户端数据。
本章将会商怎样在客户端利用数据。出格将侧重研讨:
・远程数据服务(RemoteDataServices,RDS),怎样向客户端传送数据和客户端吸收数据。
・怎样将ADO纪录集绑定到HTML控件。
・怎样使用用户自界说组件供应数据。
・怎样更新客户端数据,并将其反应到服务器。
・怎样从数据库中猎取图象并将其显现在Web页面中。
・怎样创立基于表格的Web页面。
以上掩盖的局限相称普遍,同时有良多分歧的办法能够获得不异的了局,但实践上完成起来并非出格坚苦。

10.1断开毗连的纪录集
起首必要把握的是“断开毗连的数据”的观点。迄今为止,在研讨ADO的过程当中,已进修了猎取纪录集的办法,和怎样修正这些纪录会合的数据。回忆一下,我们翻开一个纪录集,对数据做一些修正,然后再封闭这个纪录集,在操纵纪录集的过程当中,一直与服务器坚持着毗连。这是相称分明的,但别忘了Web在实质上是无形态的。假如想利用客户端数据,怎样一直坚持与服务器的毗连?很复杂,这是不成能完成的,这也是界说断开毗连的纪录集观点的启事。
一个断开毗连的纪录集只是一个一般的纪录集,但排除了与服务器的毗连,成为伶仃的工具,能够像一般的纪录集那样对其实行更新、增添和删除操纵。但这些变更只产生在纪录集外部,其实不反应到服务器,由于纪录集与服务器已不再坚持着毗连。这并非弱点,由于能够与服务重视新创建毗连,同时服务器能够对任何修正举行更新。即便服务器真个数据已改动了,ADO仍旧无方法让用户实时发明这些变更,如许用户就可以决意哪些数据是准确的。这称为抵触处置(conflictresolution)。
断开毗连的纪录集使我们能在组件之间,包含服务器与客户之间,传送具有全体功效的纪录集。本章前面将切磋怎样在组件内创立断开毗连的纪录集。但这里禁绝备对此做过于具体的研讨,由于本书第13章至第18章已掩盖这部份内容,这里仅做复杂的先容,以便于懂得组件是怎样与远程数据服务交互的。

10.2远程数据服务
远程数据服务(RemoteDataServices,RDS)是同意我们处置客户端数据的一系列服务的统称。如今不必忧虑这方面的成绩,由于RDS自己就是ADO的一部分,只要在必要传送和利用客户端数据时,才会利用。实践上RDS是由几个组件组成的。0-1申明了这些组件和它们之间是怎样协同事情的。
0-1RDS的组件组成
组件仿佛良多,但并非一切的组件在每种情况下都被利用,实践上有一些不是RDS的一部分。但是这里仍是把一切大概呈现的组件都放在了图上,以备必要时检察。0-1分红了两部分,由于利用客户端数据必要一些向客户端传送数据的办法,同时数据一旦抵达客户端,也必要一些办理数据的办法。我们先从服务器端入手下手。

10.2.1RDS服务器组件
固然RDS用于传送和会见客户端数据,但其的确有一些基于服务器的组件。这是必须的,由于一定必要某种体例将数据传送到客户端。因而有了一系列能会见数据并同意发送数据到客户真个服务器组件。我们把实践的数据传送称为调剂(marshal)。
服务器端组件图的最上端是数据存储,由OLEDB供应者会见。它并非RDS的一部分,但这暗示只需有响应的OLEDB供应者,就能够经由过程RDS在客户端利用任何数据。至于怎样处置服务器上的数据,能够有两种选择:
・数据工场(DataFactory)是缺省的用于会见数据存储的服务器端组件。它作为服务器端RDS组件的一部分安装在盘算机上,除能从数据存储中猎取数据外,还为服务器处置发送到客户端和从客户端发送来的数据。
・自界说组件只是一个一般的供应了数据传送办法的COM组件。当数据工场不克不及供应所需的功效时,可使用自界说组件。本章将先容一个复杂的组件例子,在本书的前面另有一个更庞大的例子。
Web服务器利用这两种组件作为客户和服务器数据的接口。

10.2.2RDS客户组件
在客户端先从底真个DataSpace工具入手下手,该工具作为客户真个一部分与数据工场或自界说工具协同事情。DataSpace工具是一个代办署理工具,卖力与服务器举行通讯,同时也是数据传输的通道(大概一般所说的调剂)。DataSpace工具是用客户端剧本言语或用HTML言语中的<OBJECT>标志创立的COM工具。在本章前面会看到关于这方面的例子。
DataSpace工具下面是数据源工具(DataSourceObject,DSO),卖力存储客户端数据。一个数据源工具包括一个ADO数据纪录集,与客户数据缓存配合办理数据。客户数据缓存只是一种办理客户端数据的客户光标服务。同时数据源工具又是一个COM工具,与DataSpace工具相似,也能够经由过程客户端剧本或利用HTML言语中的<OBJECT>标志来创立。一样,在本章稍后也会先容关于这方面的一些例子。
数据源工具的下面是数据绑定办理器,义务是创建HTML控件与数据源工具的毗连。这就是我们所晓得的绑定,能够经由过程设置某些HTML控件的DATASRC和DATAFLD属性来完成。上面将对这些内容举行会商,并树模怎样在扫瞄器中便利地利用数据。

10.2.3撑持RDS的扫瞄器
要晓得RDS是微软的手艺,因而只能在微软的扫瞄器上事情。实践上,只要在IE4.0或更高版本的扫瞄器中才完整撑持RDS。
当编写依附于RDS的使用程序时,必要注重会见使用程序的客户的RDS版本大概与服务器端有所分歧。举例来讲,IE4中的是RDS1.5版本,而IE5、Office2000和VisualStudio6中的则是RDS2.0版本。有两种办法能够处置这类兼容性成绩:
・确保一切用户已晋级到RDS的最新版本。假如客户运转的是Windows2000,那末已在运转最新版本的RDS了。不然,能够从网址www.microsoft.com/data处下载。RDS2.5版本是今朝最新的伴同Windows2000一同公布的版本,同时也是一个可独自下载的软件包。
・当毗连到数据源时,指定命据工场的形式。这能够指定利用的是哪个版本的RDS组件,前面将先容这方面的一个例子。

10.2.4数据源工具
数据源工具是一个存储和办理客户端数据的客户端工具。由于这是利用RDS最复杂的一种体例,起首研讨一下这些工具。
这里有几个分歧的数据源工具,每个都针对分歧范例的数据:
・表格数据控件(TabularDataControl,TDC),用于处置表格情势或分开情势的文本文件。
・RDS数据控件,用于毗连OLEDB数据存储,可以指定毗连到哪一个数据存储,和前往哪些数据。
・Java数据库毗连器,这是一个经由过程Java数据库控件(JavaDataBaseControl,JDBC)毗连到数据存储的Java小程序。这里我们不想会商JDBC,由于它其实不供应其他控件没法完成的功效。
・微软的HTML(MSHTML)数据源工具用HTML标志数据,并把它作为数据源。
・XML数据源工具利用XML数据,用于布局化的或恣意布局的XML。
选用哪种数据源工具取决于你想做甚么,和数据从那里来。假如必要向客户供应大批的数据,而且不同意用户修正数据,那末表格数据控件(TDC)大概会对照合适。这类数据源是一个文本文件,不必要任何数据库,因而编纂起来对照复杂。关于从数据库中掏出数据而且大概必要更新的情形,RDS数据控件是最符合的。而关于很多新数据源,会发明此时必要利用XML数据控件。这实践依附于所利用的Web使用程序的范例,和用户所需的功效。
我们将顺次先容这些数据控件,一旦懂得了怎样用它们把数据传送到客户端,将会先容怎样利用这些数据。
1.表格数据控件
表格数据控件(TabularDataControl,TDC)是最复杂的数据源工具,次要用于大批的只读数据,出格是那些从不改动或很少修正的,不必要从客户端举行更新的静态数据。比方,表格数据控件能供应一个网页内的菜单项或链接的列表。
经由过程在HTML代码中利用<OBJECT>标志能够创立一个表格数据控件。参数DataURL能够指定包</p>下一页
大家可以自己去看一看.可以说看得想呕吐.以前有次下了个动网来看.里面连基本内置函数的保护措施(函数没防御性)都没有.难怪经常补这个补那个了.可能现在.NET版会好点吧

谁可相欹 发表于 2015-1-20 18:02:38

ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。

柔情似水 发表于 2015-1-29 13:51:48

哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?

再见西城 发表于 2015-2-6 01:41:25

ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。

再现理想 发表于 2015-2-14 20:52:55

弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。

海妖 发表于 2015-3-4 10:25:43

我想问如何掌握学习节奏(先学什么再学什么)最好详细点?

海妖 发表于 2015-3-4 10:25:44

ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。

小魔女 发表于 2015-3-11 18:13:24

接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。

小女巫 发表于 2015-3-19 06:25:30

ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。

仓酷云 发表于 2015-3-27 10:10:07

如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。

若天明 发表于 2015-3-27 10:10:09

ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。

不帅 发表于 2015-3-27 10:10:11

那么,ASP.Net有哪些改进呢?

仓酷云 发表于 2015-3-27 10:10:11

交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
页: [1]
查看完整版本: ASP网页设计ASP 3.0初级编程(四十四)