zoukankan      html  css  js  c++  java
  • 异常处理 以此警示后人

    异常类Exception 

    记录成文本日志 

    有些人喜欢记录ex.Message 

    这样记录一般只有一行中文的错误提示 

    结果查原因半天查询不不到 

    直接序列化Exception 也会出现一定的问题会报循环引用问题

    我们一般向下面这样处理

    /// <summary>
            /// 创建异常消息
            /// </summary>
            /// <param name="ex">异常信息</param>
            /// <param name="remark">备注</param>
            /// <returns>结果</returns>
            private static StringBuilder CreateErrorMessage(System.Exception ex, string remark)
            {
                StringBuilder stringBuilder = new StringBuilder();
                stringBuilder.Append("************************Exception Start********************************");
                string newLine = Environment.NewLine;
                System.Exception innerException = ex.InnerException;
                stringBuilder.AppendFormat("Exception Date:{0}{1}", DateTime.Now, Environment.NewLine);
                if (innerException != null)
                {
                    stringBuilder.AppendFormat("Inner Exception Type:{0}{1}", innerException.GetType(), newLine);
                    stringBuilder.AppendFormat("Inner Exception Message:{0}{1}", innerException.Message, newLine);
                    stringBuilder.AppendFormat("Inner Exception Source:{0}{1}", innerException.Source, newLine);
                    stringBuilder.AppendFormat("Inner Exception StackTrace:{0}{1}", innerException.StackTrace, newLine);
                }
                stringBuilder.AppendFormat("Exception Type:{0}{1}", ex.GetType(), newLine);
                stringBuilder.AppendFormat("Exception Message:{0}{1}", ex.Message, newLine);
                stringBuilder.AppendFormat("Exception Source:{0}{1}", ex.Source, newLine);
                stringBuilder.AppendFormat("Exception StackTrace:{0}{1}", ex.StackTrace, newLine);
                stringBuilder.AppendFormat("Exception Remark:{0}{1}", remark, newLine);
                stringBuilder.Append("************************Exception End************************************");
                stringBuilder.Append(newLine);
                return stringBuilder;
            }
  • 相关阅读:
    OTA JAR和JAD的mime不同
    document.getElementById('selCatalog').remove(i)突然无效???!
    判断WAP1.1和WAP2.0并解析为wml或xhtml
    IE和firefox下显示html内容
    unixrisk tip
    unixftp windows
    unixstdin/stdout/stderr
    峰鸟摄影
    linuxgrep commond
    unixtutorial(recommended)
  • 原文地址:https://www.cnblogs.com/liuxiaoji/p/9177645.html
Copyright © 2011-2022 走看看