• C# 统一对 try...catch 的调用,方便保存错误日志


    每个优秀的开发人员,应该尽可能保证程序稳定运行,在确实不需要使用try...catch的地方尽尽量不要使用以提高程序性能。
    
    但是我们不可能保证每段代码不会出错,由于出错引起的用户界面并不友好,而且有可能会导致整个程序崩溃,所以我们在可能出错的地方经常会try...catch捕获异常,这样可以把异常保存到日志,提供给用户一个友好的提示。
    
    但是一个大项目到处都是 try...catch 不太容易维护。以下是我自己项目里面写的两个方法:(.Net 4.0public static bool TryExec(Action action) {
                try {
                    action();
                    return true;
                }
                catch (Exception ex) {
    // 保存日志
                }
                return false;
            }
    
            public static bool TryExec(Action action, Action<Exception> actionFailed) {
                try {
                    action();
                    return true;
                }
                catch (Exception ex) {
    // 保存日志
                    actionFailed(ex);
                }
                return false;
            }
    
    调用也比较简单:
    
    
    TryExec(()=>{
    // 要执行的操作
    });
    
    或
    
    TryExec(()=>{
    // 要执行的操作
    },
    
    (ex)=>{
    // 出错后要执行的操作
    });
    
    如果还有人有更好的方法,请交流下!
    需要返回值的情况
    public static T Exec<T>(Func<T> fun) {
    T result = default(T);
      try{
        result = fun();
      }
      catch{
      }
      return result;
    }
  • 相关阅读:
    剧集更新表
    Pyhton资源
    JAVA资源
    012 循环
    011 条件判断
    010 使用list和tuple
    009 字符串和编码
    007 Python基础
    python 内置函数
    python 获取当前运行的类名函数名inspect.stack()[1][3]
  • 原文地址:https://www.cnblogs.com/qq1223558/p/3168977.html
Copyright © 2020-2023  润新知