当前位置: 首页 > 图文教程 > 网络编程 > ASP > 正确处理ASP动态网页中的容错机制

ASP
如何使用ASP产生象安装向导的主页
ADO如何取得数据库中表的字段信息之一
ADO如何取得数据库中表的字段信息之二
网页计数器的程序
实验Recordset.Movenext,Recordset.Previous,Recorset...等移动记录
不能ASP图像组件来生成图像的ASP计数器程序(一)
IIS5 + ADO 2.5新先睹为快技术(一)
IIS5 + ADO 2.5新先睹为快技术(二)
如何使用 Microsoft Access 和 Active Server Pages 加密你的页面
WINDOWS 2000搭載ASP3.0和IIS5.0
IIS 5.0新功能
网络开发之编程技巧之一(有效验证用户的登录)
如何使用ASP在自己的网站建立投票机制(一)
如何使用ASP在自己的网站建立投票机制(二)
组件对象开发Web应用的实例分析
如何实现动态添加Html文档中Form项
一个BBS的源代码(一)
一个BBS的源代码(二)
一个BBS的源代码(三)
一个BBS的源代码(四)

正确处理ASP动态网页中的容错机制


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 108 ::
收藏到网摘: n/a

以国内最流行ASP为例,我不知道有多少人会在写代码时想到“容错”这个概念,实际上当我遇到这种事时,也是不了了之。为什么呢,想想最初的意思是认为写如下代码就能容错了,见示例1-1。

以上代码就经常出现在各位同仁的手中,不用说出个中原因,我完成能理解各位现在的心情,我可以向大家坦白地说,我写了二年的ASP网页,大多数都是这种方式,不断的写,不断的改,心力交瘁,现在都不愿回头改写自已的代码了。实际上最基本的容错机制的想法,就是不要相信程序能为你节省多少事,要把控制权掌握在自已的手中,这是必要的。

以下为引用的内容:
<%@ Language=VBScript %>
<%Option Explicit%>
<%
'========================================
DIM NDEBUG_MSG
NDEBUG_MSG=TRUE
IF NDEBUG_MSG = TRUE THEN
'出错过滤
ON ERROR RESUME NEXT
END IF
'===============END =====================
……………(代码略)
'数据事务处理-start
If Err.number = 0 Then
'~~~~~ Open database and begin transaction ~~~~~~~~~~~~~~~~~~~~
'------------------------------
'-------------------------------------
objConn.BeginTrans
objConn.Execute (objSQL)
'~~~~~~ Commit the transaction and close the database connection
objConn.CommitTrans
Response.CacheControl ="Private"
Response.Expires = -1
……………(代码略)
Else
'~~~~~ Rollback transactions and close objects
objConn.RollbackTrans
'~~~~~ Raise errors for asp page
'Err.Raise Err.Number, Err.Source, Err.Description
'Err.Clear
Response.Write "Description= ("& err.number &"),("& err.Description &")"
End If
'==============END FILES=====================
%>

示例1-2 完整的容错机制代码范例

看了以上代码,你会发现也没有什么高超技艺在里面,高手可能更是不屑一顾。但大家未必能在写代码时这样作。

【1-1】编写动态网页时,一定要考虑容错机制,如在ASP中,就应该参考示例1-2,写出健壮的代码。