我爱Aspx >> Asp.Net >> Try...Catch...Finally 和Throw 叙述介绍完了On Error 叙述后,相信大家对于错误处理的方式及流程应该有基础的认识了。接着我们要来介绍.NET 架构里最新的错误处理方式Try...Catch。我们前面提到On Error 虽然简单但是不够结构化,因此.NET 便加入了Try...Catch 的除错方式,使我们能够更有效率的撰写错误处理法则。
例外(Exception)
错误被称为例外(Exception),而例外也是对象;它和Err 对象不一样,不同的例外被做成不同的对象。例如将非数值型态的数据以型态转换函数处理时,会发生FormatException 型态的例外;而提供这个例外信息的是FormatException 对象。
Try...Catch
Try...Catch 的概念基本上和On Error 叙述一样,它也是当发生错误时就跳到例外处理程序中,其结构如下所示:
Try
程序执行的区块
Catch 变量As 例外对象
例外处理程序的区块
End Try
我们可以针对不同的例外来建构不同的例外处理程序,例如:
Try
程序代码
Catch 变量As 例外对象
例外处理程序代码
Catch 变量As 例外对象
例外处理程序代码
[Finally]
例外处理程序代码
End Try
下列范例将On Error 错误捕捉改成Try...Catch 处理,我们一样只要输入非数值型态的内容至TextBox 中即可引法错误:
<Html>
<Form Runat="Server">
<ASP:TextBox Id="Text1" Runat="Server"/>X
<ASP:TextBox Id="Text2" Runat="Server"/>
<ASP:Button Id="Button1" Text="=" OnClick="Button1_Click"
Runat="Server"/>
<ASP:Label Id="Label1" Runat="Server"/><p>
<ASP:Label Id="Label2" Runat="Server"/>
</Form>
<Script Language="VB" Runat="Server">
Sub Page_Load(Sender As Object,e As Eventargs)
Label1.Text=""
Ҷƪл˵?
常见的例外对象[04-29]
使用Debug 工具列[04-29]
可视化的除错工具[04-29]
Session 物件[04-29]
锁定Application 物件[04-29]
设定Session 对象变量的有效期限[04-29]
Cookie 物件[04-29]
程序的追踪及检视[04-29]
自订CookieCollection 及Cookie ..[04-29]
设定Cookie 变量的生命周期[04-29]