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.
  • 相关阅读:
    Python 爬虫-正则表达式
    Python 爬虫-信息的标记xml,json,yaml
    Python 爬虫-BeautifulSoup
    bzoj 1491
    bzoj 1406 数论
    Codeforces Round #496 (Div. 3) E2
    2017-2018 ACM-ICPC Northern Eurasia (Northeastern European Regional) Contest (NEERC 17) 日常训练
    Codeforces Round #496 (Div. 3) F
    bzoj 1415 期望dp + 记忆化搜索
    bzoj 1483 链表 + 启发式合并
  • 原文地址:https://www.cnblogs.com/zeroone/p/3292415.html
Copyright © 2011-2022 走看看