设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 编程开发 >> 网络编程 >> ASP教程 >> ASP开发中的(VBScript)类基础学习
精品推荐
ASP教程点击TOP10
·ASP快速开发方法之数据操作
·ASP六大对象介绍
·asp学习入门经验谈
·ASP讲座之六:ASP与数据库(一)
·一些简单的验证(中文验证、数字验证)
·ASP教程:透彻掌握ASP分页技术
·asp.net高级教程(三)-实战篇
·十天学会ASP之第二天
·ASP 3.0高级编程(十六)
·简单熟悉掌握ASP的语法和变量
网络编程点击TOP10
·ASP快速开发方法之数据操作
·在jsp中用bean和servlet联合实现用户注册、登录
·如何删除数据库中的冗余数据(翻译)
·『原创』C#中TreeView类操作全攻略:建立树,新增节点,删除节点,修改节点,拖动节点,与Oracle数据库交互操作(一)
·ASP六大对象介绍
·ASP.NET2.0下含有DropDownList的GridView编辑、删除的完整例子!
·用实例学:ASP.NET的include的用法
·官方水晶报表 .NET 应用程序实例下载 (C#、Visual C++.NET)
·asp学习入门经验谈
·PHP模板比较篇总结
精选专题

ASP开发中的(VBScript)类基础学习

作者: 来源:http://www.xgdown.com/ 时间:2007-10-12 12:43:09

ASP开发中的(VBScript)类基础学习(3) If isempty(Session("node")) Then Set Session("node")=New ListNode
Set n=Session("node")
Response.Write n.Content
%>

  还是上面的ListNode这个类,这段代码意图在一个用户会话中只保留一个ListNode的对 象。所以在用户第一次访问该网页时,会生成ListNode的一个对象,并保存在Session("node")中;后面访问该网页时,因为 Session("node")不为空了,所以不会生成一个新的对象,而是到 Session("node")中取出保存的对象。

  理论上应该也会输出100,但是问题来了,ASP一直会报错:

  Microsoft VBScript runtime error '800a01b6'

  Object doesn't support this property or method: 'n.Content'

  用n.Type也会出错。同样的代码翻译成PHP,运行却是可以通过的。为什么?

  个人分析下来,认为Session可以保存对象是没错,只是VBScript中类型转换的机制太 弱,而且没有显式的强制类型转换供用户使用,无法将 Session("node")正确转换为ListNode类型。因为是自定义的类,我们只能在每个页面中都出现类的定义语句,这样在ASP看来,每次读 取这个页面时,ListNode类都是一个新类,所以就不认得Session中的这个类的对象了。

  结论:尽量不要想到用Session或Application来存储ASP中自定义类的对象。如果 确实需要,可以考虑用COM来编写类,然后在VBScript中用:Set Session("obj") = Server.CreateObject("YourApp.YourClass")来创建一个对象,然后即可实现上面预想的功能了。

共3页 9 7 [1] [2] [38 :>

ASP开发中的(VBScript)类基础学习 相关文章:
ASP开发中的(VBScript)类基础学习 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com