仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1549|回复: 18
打印 上一主题 下一主题

[学习教程] ASP网站制作之为你的ASP法式制造一个编译组件(中)

[复制链接]
谁可相欹 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:32:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
asp,你就只能等着微软给你解决,它不乐意你就只好悲催。而且asp跑在windows服务器上,windows服务器跟linux比起来简直弱爆了!   下一步是将VBScript对象中的一切代码拷贝出来并粘贴到新工程导游所显示的类窗口中去.只需拷贝从"class DBConnection"到"end class"之间的代码.在粘贴完代码今后,在属性窗口中将类的名字改成DBConnection,如图C所示.


</IMG>
同时将MTSTransactionMode改成3(利用事务处置进程).咱们没有需要为这个对象添加任作甚撑持事务处置(transaction)进程出格编写的代码,但咱们最好应当声名你的对象将撑持事务处置.如今,在你的硬盘上保留你的工程和类.我感觉利用这些名字将削减搅浑,然而假如你的口胃和我分歧,你也能够更改这些文件的名字.

由于这个对象利用ADODB,所以下一步是在工程中添加对谁人库的援用.选择"工程"菜单并选择"援用...".随后显示的对话框将显示一个你的盘算机上可用的库文件的列表,如图D所示.阅读这个列表然后选择Microsoft ActiveX Data Objects 2.5 Library 复选框.我的体系上装了SQL 2000,然而假如你没有2.5版本,你可以选择你的体系上比来的版本.这个组件没有利用任何刚宣布的功效,所以大多半Active Data Objects的版天性够正常任务.

图D

</IMG>
代码修正
到今朝为止,咱们已胜利的将DBConnection 类的代码转移到了Visual Basic外面.对大局部中央来讲,这个代码是完全的.除类的机关函数中对ASP Application对象的援用和Server.CreateObject那一行之外,这个代码就能够编译了.为了包管一个编译优秀的对象,一点点代码上的修正是需要的.

起首,在代码窗口的顶部添加"Option Explicit"这一行以便利变量在它们被声名之前就利用的时分体系发生一个毛病正告.一样,将对mConnectionString的维数声名移到Option Explicit声名上面.然后,如图B所示那样将Class_Initialize()进程改动一下.这个代码只是复杂的将毗连字符串代码直接挪动到了对象外部.这增添了一点点平安性,由于一个编译后的对象可以连到数据库而不会向开辟者或未受权的用户表露实践的毗连字符串.

Listing B
Private Sub Class_Initialize()
   mConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _
      & "Data Source=c:\temp\Music Collection.mdb;"
End Sub

为了确保你的组件不会表露毗连字符串,可以将Public Property GetConnectionString()代码从类中去失落.这能让ConnectionString属性变得只读,这就使得用户可以利用这个类来会见其他的数据源,然而它又禁止了这个属性被读掏出来,因而用户就没法看见毗连字符串了.

你还可以去失落Class_Terminate()进程,由于它其实不包括任何代码.可以用一个查找交换进程,"Server.CreateObject"作为查找文本而"CreateObject"作为交换文原本交换失落它们.这使得一切对象的创立进程对Visual Basic兼容.到这个时分你应当保留工程然后,仅仅是出于测试的目标,从文件菜单当选择创立DBUtil.dll编译这个dll.这个组件应当可以编译胜利,固然不做进一步的修正它就不克不及正常运转.

余下的修正任务数不堪数然而复杂.由于Visual Basic的类型反省比VBScript更强,你应当对类中的一切函数和变量做出类型限制.这个任务不会要多长工夫却能匡助生成一个更高效的代码.列表C展现了完成的类.
asp是基于web的一种编程技术,可以说是cgi的一种。它可以完成以往cgi程序的所有功能,如计数器、留言簿、公告板、聊天室等等。
只想知道 该用户已被删除
沙发
发表于 2015-2-4 01:42:29 | 只看该作者
最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。
活着的死人 该用户已被删除
板凳
发表于 2015-2-4 01:42:32 | 只看该作者
ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。
admin 该用户已被删除
地板
发表于 2015-2-9 09:15:22 | 只看该作者
尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。
再见西城 该用户已被删除
5#
发表于 2015-2-27 13:27:28 | 只看该作者
最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。
小妖女 该用户已被删除
6#
发表于 2015-3-7 04:56:32 | 只看该作者
他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。
第二个灵魂 该用户已被删除
7#
发表于 2015-3-12 20:44:13 | 只看该作者
不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍
爱飞 该用户已被删除
8#
发表于 2015-3-20 02:14:32 | 只看该作者
他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。
简单生活 该用户已被删除
9#
发表于 2015-4-1 22:41:01 | 只看该作者
Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
变相怪杰 该用户已被删除
10#
发表于 2015-4-14 19:47:55 | 只看该作者
我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
精灵巫婆 该用户已被删除
11#
发表于 2015-4-16 05:10:25 | 只看该作者
我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。
灵魂腐蚀 该用户已被删除
12#
发表于 2015-4-17 17:36:07 | 只看该作者
在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。
分手快乐 该用户已被删除
13#
发表于 2015-4-30 04:06:04 | 只看该作者
代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
不帅 该用户已被删除
14#
发表于 2015-5-2 18:58:49 | 只看该作者
Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
谁可相欹 该用户已被删除
15#
 楼主| 发表于 2015-6-7 06:09:36 | 只看该作者
Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件
冷月葬花魂 该用户已被删除
16#
发表于 2015-6-25 21:52:33 | 只看该作者
下面简单介绍一下我学习ASP的方法,希望对想学习ASP的朋友有所帮助...
若天明 该用户已被删除
17#
发表于 2015-6-28 02:59:22 | 只看该作者
我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。
再现理想 该用户已被删除
18#
发表于 2015-7-7 00:21:56 | 只看该作者
跟学别的语言一样,先掌握变量,流程控制语句(就是ifwhileselect)等,函数/过程,数组
愤怒的大鸟 该用户已被删除
19#
发表于 2015-7-10 07:19:58 | 只看该作者
交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-3 18:26

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表