浅析ASP.Net之C#中的异常处理(2)_.Net教程
推荐:ASP.Net网络数据库:连接到数据库1.使用数据库MyFirstAccessDB 本实例使用的数据库名称为MyFirstAccessDB,版本为Microsoft Access 2003中文版。该数据库已经在1.4.2节中创建。 2.创建新ASP.NET应用程序 在Visual Studio .NET 2003集成开发环境中创建新的ASP.NET Web应用程序,命名为Examp
可以采取如下形式记录异常:
在文件中记录异常。便于技术人员查看所发生的异常,从而日后对程序进行改进。
在数据库中记录异常。数据库支持查询,这样在后期就能够对异常进行分类查询等操作,便于查看与管理。
在Eventlog中记录异常。能够远程操作,方便系统管理员监控所有计算机的异常。
除了可预料到的异常外,还有未预料到的异常。这类异常是无法进行管理的,发生后将系统程序转移到特定的错误页面,提示用户系统出错,结束程序。做好日志能为解决和调试问题带来很多方便。要避免使用了Try-Catch但没有处理异常的情况,否则就相当于给异常放行(这种情况还不如根本不去捕获)。
异常处理,还应该注意在Finally块中释放相关资源、还原相关设置信息等收尾工作。基本程序结构如下:
try
{
int x = 123/0; //会抛出一个除数为0的异常
}
catch
{
// ... //在这里捕捉到这个异常,然后进行相关处理
}
finally
{
// ... //在这里做最后的清理或是其他工作
}
本章的异常处理是针对容易出现错误的地方(操作数据库)应用此技术,但是只是捕捉到SQL异常后,给用户一个错误提示,并没有进一步作程序的处理。
C#中常见异常类
Exception:所有异常对象的基类。
SystemException:运行时产生的所有错误的基类。
IndexOutOfRangeException:当一个数组的下标超出范围时运行时引发。
NullReferenceException:当一个空对象被引用时运行时引发。
InvalidOperationException:当对方法的调用对对象的当前状态无效时,由某些方法引发。
ArgumentException:所有参数异常的基类。
ArgumentNullException:在参数为空(不允许)的情况下,由方法引发。
ArgumentOutOfRangeException:当参数不在一个给定范围之内时,由方法引发。
InteropException:目标在或发生在CLR外面环境中的异常的基类。
ComException:包含COM类的HRESULT信息的异常。
SEHException:封装Win32结构异常处理信息的异常。
SqlException:封装了SQL操作异常。
分享:JSP和ASP.NET存储过程的对比这篇文章主要介绍了Oracle数据库到SQL Server数据库主键的迁移过程,具体内容请参考下文。 由于项目需要要将以前Oracle的数据库转化为SQL Server,今天利用SQL Server的DTD进行数据库的迁移,但导入以后发现只导入了表结构和数据,而表的一些主键约束都没导过
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP发送Email实例(可带附件)
- js实现广告漂浮效果的小例子
- asp.net Repeater 数据绑定的具体实现
- Asp.Net 无刷新文件上传并显示进度条的实现方法及思路
- Asp.net获取客户端IP常见代码存在的伪造IP问题探讨
- VS2010 水晶报表的使用方法
- ASP.NET中操作SQL数据库(连接字符串的配置及获取)
- asp.net页面传值测试实例代码
- DataGridView - DataGridViewCheckBoxCell的使用介绍
- asp.net中javascript的引用(直接引入和间接引入)
- 三层+存储过程实现分页示例代码
- 相关链接:
- 教程说明:
.Net教程-浅析ASP.Net之C#中的异常处理(2)。