您的位置:首页技术开发ASP技巧 → 将ASP代码移植为VB COM组件-3

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

时间:2004/11/7 4:03:00来源:本站整理作者:蓝点我要评论(0)

一个快速回答的问题:为什么关于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。




相关阅读 Mac访问Windows共享文件夹Windows 7正版系统验证方法windows 8.1系统版本号查看方法Windows 8.1系统电话激活时无法输入微软返回代码解决方法Windows 8如何调整屏幕分辨率windows8.1磁盘占用100%解决方法Mac双系统如何删除Boot Camp安装的Windows分区Apple教你如何在Mac 上运行 Windows

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 VB.NET 2005编写定时关 Jquery get/post下乱码解决方法 前台gbk gb如何使用数据绑定控件显示数据ASP脚本循环语句ASP怎么提速

人气排行 轻松解决"Server Application Error"和iis"一起学习DataGridView调整列宽用ASP随机生成文件名的函数Jquery get/post下乱码解决方法 前台gbk gbODBC Drivers错误80004005的解决办法返回UPDATE SQL语句所影响的行数的方法用Javascript隐藏超级链接的真实地址两个不同数据库表的分页显示解决方案