快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

澳门新葡亰app在线下载:脚本对象与服务器组件的比较



在前几章中,我们澳门新葡亰app在线下载已经钻研了两类不合的工具:一类是ASP工具模型的内置部分,另一类是脚本运行期库供给的工具。本章将先容第三类能用于ASP的工具,取名为活动办事器组件(或者就称为办事器组件)。

这些组件在很多场合下就犹如在浏览器或在像Visual Basic编程情况顶用于客户端脚本中的传统ActiveX控件一样,然则这些组件可在办事器上运行,而不是一个只能运行在客户机上的工具。

现在的问题是:这些组件来自哪里?此中一部分是由老例的ASP/IIS安装法度榜样供给的,而另一部分可以从Web上免费或有偿得到。本章评论争论ASP的各类组件的主要用途,然后先容可获得的其他组件的几个典型。一旦感到到应用这些活动办事器组件轻车熟路,你就会绝不辛勤将其他供应商产品嵌入到自己的ASP页面中。本章后面有一个第三方组件的列表,本书后面还将先容若何创建自己的组件。

还有一些用于ASP的组件,但本章不准备评论争论。动态Web网站技巧的基础用途之一是宣布直接从数据库治理系统和其他类型的数据澳门新葡亰app在线下载存储得到的信息,这一用途和从数据库或其他数据存储中网络数据和存入数据的需求,匆匆使法度榜样员开拓办事器端编程。为了应用ASP完成这些义务,我们可以充分使用称为ActiveX数据工具(ActiveX Data Objects,ADO)库的组件集。因为它涉及的内允很多,很难在本章中阐述清澳门新葡亰app在线下载楚,还要斟酌的其他的组件,本书从第8章开始讲述相关的内容。

本章要评论争论的内容有:

· 办事器组件与在ASP中应用的其他工具的差别。

· 简要阐明若何实例化工具,并获得办事器组件的引用。

· ASP 3.0和IIS供给的可安装组件,例如AD Rotator、Content Linking、Page Counter和Tools等组件。

· 一些第三方供给的组件。

6.1 脚本工具与办事器组件的对照

前一章已阐清楚明了各类脚本工具,这些工具对付ASP/IIS来说都是从脚本运行库(scrrun.dll)中获得的,紧张的是不要把这些工具与办事器组件(即本章的主题)肴杂一路。

办事器组件平日在其自己的DLL或可履行文件中实现,例如本章将要评论争论的“Content Linking”组件,便是由nextlink.dll实现的。一旦在办事器安装和注册这个DLL文件,那么其供给的工具就可以在ASP所支持的任何脚本说话中应用。组件与系统情况的关系如图6-1所示:

应用组件办事器组件

前一章已经先容了工具和组件在页面中通用的实例化措施,应用办事器组件和应用脚本运行期库工具的措施完全同等,独一的差别是,不像脚本工具,办事器组件平日作为零丁的DLL文件实现,而且可能要求在应用前先运行一个安装法度榜样,或者手工注册该组件(假如这些组件在ASP缺省安装时未注册)。

1.CreateObject措施

一样平常说来,可以在一个ASP页面中应用ASP内置的Server工具的CreateObject措施创建一个工具,例如:

Set objThis = Server.CreateObject("this.object")' in VBScript

或:

var objThis = Server.CreateObject('this.object');// in JScript

这样就在变量objThis中创建了该工具的引用,然后可以在脚本中应用该工具;换句话说,可以在代码中根据必要节制其属性及调用其措施。

2.应用元素

同样可以应用老例的元素创建一个工具该措施同样适用于在Web浏览器页面中创建工具。ASP支持HTML元素的特殊实现,而且我们可以应用这一措施在页面中放置一个工具。要在通俗的.asp文件中定义一个组件或脚本工具的实例,应用下面语句:

我们应用SCOPE属性来设定工具的范围,选项是“SESSION”、“APPLICATION”和“PAGE”。假如在通俗的.asp文件中应用元素,那么必须同时应用“PAGE”属性,并轻忽SCOPE属性,由于创建的工具只能在它被实例化的页面中应用。假如在global.asa文件中应用元素,则所创建的工具可在当前会话或全部利用法度榜样中应用,是以SCOPE属性可设置为“SESSION”和“APPLICATION”。

3.检测工具实例的存在

常常呈现的差错是妄图创建一个未安装(或未注册)的工具的实例,或者在CreateObject措施或元素中应用差错的工具ProgID。缺省状态下,ASP会呈现差错并竣事页面的履行。

给页面添加一些法度榜样代码,在造访工具之提高行检测是需要的。在VBScript中,可以做到这一点,措施是:关闭缺省的差错处置惩罚,然后应用IsObject函数查看工具是否真的引用了一个工具:

' in VBScript:

On Error Resume Next'turn off default error handling

Set objThis = Server.CreateObject("this.object")

If IsObject(objThis) Then

'the CreateObject method succeeded

On澳门新葡亰app在线下载 Error Goto 0'turn the default error handling back on

'rest of the script g澳门新葡亰app在线下载oes here

Else

Response.Write "Sorry, this page cannot be accessed at present"

Response.Flush

Response.End

End If

在JScript说话中,可以应用JScript 5.0脚本引擎中新的差错处置惩罚特点,这在第1章中先容过。

// in JScript:

try {

var objThis = Server.CreateObject('this.object');

// rest of the script goes here

}

catch (exception) {

Response.Write ('Sorry, this page cannot be accessed at present');

Response.Flush();

Response.End();

}

您可能还会对下面的文章感兴趣: