将ASP代码移植为VB COM组件-3

阳光的高帅富

阳光的高帅富

2016-01-29 18:04

将ASP代码移植为VB COM组件-3,将ASP代码移植为VB COM组件-3
  一个快速回答的问题:为什么关于ASP的书中,讨论使用子程序和函数的代码的那么少?

     虽然一行一行地写ASP代码要更加简单,但是以程序的形式来编码却有许多益处。

     首先,非程序化的代码不容易移植到Visual Basic。也许目前你没有这个计划,但是总有一天你会为了
其性能或可扩展性而将一些代码移植到组件中。

     其次是程序是运行得更快。对ASP性能的最大消耗是上下文转换,每次从ASP代码区< % % 移到无格式的
HTML时都会发生。因为你不会在程序内部编码一个上下文转换,就不讳感觉到这种消耗。另外,ASP的
缓冲器也显示当子程序用程序化代码点击页面时会有很大的不同。这里是使用程序化代码的ASP应用程序
"Hello World" 的必须部分:

     Private Sub Main()
     Response.Write "Hello World!"
     End Sub

     Call Main

     为了完整起见,我在程序中包含了一个上下文转换的小例子。如果你试验这个代码,它会运行,但是请
不要在你自己的应用程序内部这样做。

     < %@ Language=VBScript %
     < %
     Private Sub DoStuff()
     %
     This is < b HTML Text! < /b
     < %
     End Sub
     %
     < HTML
     < HEAD
     < META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0"
     < /HEAD
     < BODY
     < P < % Call DoStuff % < /P
     < /BODY
     < /HTML

     程序化的代码还有一些其它益处。首先你会发现再利用包含在程序中的代码部分更加容易。其次,要
实现同样的目的所需要的代码行更少。第三,你将要开始开发一个大的可再利用代码库。开始时它的
形式是.inc 文件,最后你自己的普通COM组件看起来就像Jeff Gordon(著名赛车选手)一样棒。

     移植你的代码

     有几件事与从VBScript向Visual Basic移植代码一样简单。一般来说,你需要移走代码并增加数据类型。
有时,也可以在Visual Basic中应用一些更有效的算法,但是必须先保证代码可以正常工作。

     在我们这个应用程序举例中,将要移植一些简单的代码到两个Visual Basic COM 组件中。将一些HTML
表格格式拖到表述类中,将ADO 对象代码拖到包裹了ADO 的数据存取类中。通过将这两个类都放入
ActiveX DLL 工程文件中可以使工程文件稍稍简单化。在实际工作中,可以为每一层创建单独的工程
文件,但是这个工程文件要在一个DLL中表明思路。如果你想纠正这种情况,就将数据存取类移到另一个
工程文件中并作为一个DLL编译。必须在表述要应用它的DLL工程文件中增加对这个新DLL的引用。

     在这个样本工程文件中使用的数据库是一个Northwind 数据库,它与Visual Basic包含在一起。在这个
样本工程文件的ZIP 文件中,我为那些没有安装Visual Basic的人做了这个文件的一个表格的版本。样本
工程文件中还包含一个与ASP代码一起使用的编译过的DLL。

 
展开更多 50%)
分享

猜你喜欢

将ASP代码移植为VB COM组件-3

ASP
将ASP代码移植为VB COM组件-3

将ASP代码移植为VB COM组件-4

ASP
将ASP代码移植为VB COM组件-4

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

将ASP代码移植为VB COM组件-2

ASP
将ASP代码移植为VB COM组件-2

将ASP代码移植为VB COM组件-1

ASP
将ASP代码移植为VB COM组件-1

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

用VB将ASP代码封装成DLL

ASP
用VB将ASP代码封装成DLL

手把手教你使用VB来创建ASP组件(3)

ASP
手把手教你使用VB来创建ASP组件(3)

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Photoshop合成教程:创意设计制作母女情深贺卡

Photoshop合成教程:创意设计制作母女情深贺卡

My sumarization after passing the exam of 310-015

My sumarization after passing the exam of 310-015
下拉加载更多内容 ↓