码迷,mamicode.com
首页 > 其他好文 > 详细

异常处理

时间:2017-12-31 20:59:18      阅读:99      评论:0      收藏:0      [点我收藏+]

标签:程序   message   标记   comment   堆栈   处理异常   pat   trace   ace   

思路

较好的两种处理方式
1、在发生异常这一级处理
2、当很多地方出现相同的异常,统一抛到App级中,用统一的方法处理(自己写一个异常类)

全局异常处理

在App里面,处理异常,并标记为“已处理”

public App()
{
    //处理UI线程异常
    Application.Current.DispatcherUnhandledException += CurrentDomain_UnhandledException;
}


private static void CurrentDomain_UnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e)
{
    var str = "";
    var error = e.Exception;
    var strDateInfo = "出现应用程序未处理的异常:" + DateTime.Now + "\r\n";
    if (error != null)
    {
        str = string.Format(strDateInfo + "Application UnhandledException:{0};\n\r堆栈信息:{1}", error.Message,
            error.StackTrace);
    }
    else
    {
        str = string.Format("Application UnhandledError:{0}", e);
    }
    MessageBox.Show("很抱歉,当前程序遇到一些问题,该操作已终止,请检查网络连接,如果问题依然存在,请联系管理员", "意外的操作", MessageBoxButton.OK,
        MessageBoxImage.Information);
    //标记为“已处理” 
    e.Handled = true;
}

异常处理

标签:程序   message   标记   comment   堆栈   处理异常   pat   trace   ace   

原文地址:https://www.cnblogs.com/Lulus/p/8158361.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!