c# 建立自定义的异常类要继承自ApplicationException类(这是一个在发生非致命的应用程序错误时抛出的通用异常,它又继承于更为通用的Exception类)通过这个基类,我们就可以编写一个通用的catch代码块,捕获应用程序定义的任何自定义异常类型。
自定义异常类myException
public class myException : ApplicationException
{
public myException(){}
public myException(string message):base(message){}
public myException(string message,Exception exception):base(message,exception){}
}
定义throwException()方法抛出自定义异常
public throwException()
{
SqlConnection con = new SqlConnection()
con.Open();
try
{
SqlCommand cm = new SqlCommand("select * from Table",con);
cm.ExecuteNonQuery();
}catch(SqlException ex)
if(ex.Number == -1)
{
throw new myException("查询错误!",ex);
}
finally
{
com.Close();
}
}
在main函数中捕获自定义异常
public void main ()
{
try
{
throwException();
}catch(myException ex)
{
MessageBox.Show(ex);
}
}