Custom exception in C#

Although the .net framework contains all kinds of exception types which are sufficient in most cases, it can make sense to define custom exception in our own application. They can greatly simplify and imprve the error handling.

Custom exception derive from Exception calss.

Define custom exception calss:

 

 // define one base class derive from Exception
    public class DataLayerException : Exception
    {
        public DataLayerException()
            : base()
        {
 
        }
        public DataLayerException(string message)
            : base(message)
        {
 
        }
        public DataLayerException(string message, Exception innerexception)
        {
 
        }
    }

    // define a child class derive from base calss
    public class FileNotFoundException:DataLayerException
    {
        public FileNotFoundException() : base()
        {

        }
        public FileNotFoundException(string filename)
            : base(filename)
        {
 
        }

        public FileNotFoundException(string filename, Exception innerexception)
            : base(filename, innerexception)
        {
 
        }
        public FileNotFoundException(string format, params object[] parmeter)
            : base(string.Format(format, parmeter))
        {
 
        }

        public FileNotFoundException(string format, Exception innerexception, params object[] parmeter)
            : base(string.Format(format, parmeter), innerexception)
        {
 
        }

        public FileNotFoundException(SerializationInfo info, StreamingContext context)
            : base(info, context)
        {
 
        }

 1. Throw exception with out message

    throw new FileNotFoundException()

 2. Throw exception with simple message

 throw new FileNotFoundException(message)

 3. Throw exception with message format and parameters

 
throw new FileNotFoundException("Exception with parameter value '{0}'", param)

4. Throw exception with simple message and inner exception

throw new FileNotFoundException(message, innerException)

 5. Throw exception with message format and inner exception. Note that, the variable length params are always floating.

 throw new FileNotFoundException("Exception with parameter value '{0}'", innerException, param)

6. The last flavor of custom exception constructor is used during exception serialization/deserialization.

 

 

 

转载于:https://www.cnblogs.com/Jenny90/archive/2013/03/19/2969242.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值