zoukankan      html  css  js  c++  java
  • 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.

  • 相关阅读:
    一种Revit多专业协同方式
    现实猛于虎
    Revit2014如何隐藏保温层
    无能的愤怒
    Revit可载入族有何意义
    利用bentley view将Revit模型输出为3D PDF文档
    Revit中创建分段剖面视图
    Revit2014机电系统类型BUG
    sketchup插件管理器速图外挂SuTool
    优秀DWG看图软件尧创CAD
  • 原文地址:https://www.cnblogs.com/Jenny90/p/2969242.html
Copyright © 2011-2022 走看看