zoukankan      html  css  js  c++  java
  • Exception

    库:http://crashreporterdotnet.codeplex.com/documentation

    private
    void ThrowException<T>(string message, params object[] values) where T : Exception, new() { // NOTE Cannot provide arguments when creating an instance of a type parameter T. var exception = (T)Activator.CreateInstance(typeof(T), string.Format(message, values)); throw exception; }

    And you would simply use it like this:

    ThrowException<InvalidOperationException>("VehicleMovementBatch Id {0} was not located.", batchId); 
    ************

    Define custom exception class:
    [Serializable]
    public class CustomException : Exception
    {
        public CustomException()
            : base() { }
        
        public CustomException(string message)
            : base(message) { }
        
        public CustomException(string format, params object[] args)
            : base(string.Format(format, args)) { }
        
        public CustomException(string message, Exception innerException)
            : base(message, innerException) { }
        
        public CustomException(string format, Exception innerException, params object[] args)
            : base(string.Format(format, args), innerException) { }
        
        protected CustomException(SerializationInfo info, StreamingContext context)
            : base(info, context) { }
    }

    Example:
     
    1. Throw exception with out message
    throw new CustomException()
    2. Throw exception with simple message
    throw new CustomException(message)
    3. Throw exception with message format and parameters
    throw new CustomException("Exception with parameter value '{0}'", param)
    4. Throw exception with simple message and inner exception
    throw new CustomException(message, innerException)
    5. Throw exception with message format and inner exception. Note that, the variable length params are always floating.
    throw new CustomException("Exception with parameter value '{0}'", innerException, param)
    
    6. The last flavor of custom exception constructor is used during exception serialization/deserialization.
  • 相关阅读:
    Project和Module的介绍
    2016-10-27~2016-11-12面试总结
    读写分离的概念(转)
    hashmap和hashtable,arraylist和vector的区别
    如何删除数据库表的重复数据
    Iterator和ListIterator的区别
    性能提升
    Oracle 查询并修改
    oracle数据库中VARCHAR2(50 CHAR) 和VARCHAR2(50) 有啥区别?
    SQL SERVER 2000安装教程图文详解
  • 原文地址:https://www.cnblogs.com/zeroone/p/3292415.html
Copyright © 2011-2022 走看看