我需要一种将所有方法包装在try catch中的方法 - c#

如果存在一种方法,我可以将所有方法包装在try catch中,而无需在每个方法中编写try catch。

当前,我们正在使用以下提到的方法:

public TValue ErrorHandler<TValue>(Func<TValue> action)
    {
        try
        {
            return (TValue)action();
        }
        catch (Exception ex)
        {
            //Handle Exception and Log it..........
            return default(TValue);
        }
    }

    public void ErrorHandler(Action action)
    {
        try
        {
            action();
        }
        catch (Exception ex)
        {
            //Handle Exception and Log it..........
        }
    }

用作:

public void ClearControls()
    {
        this.ErrorHandler(() =>
        {
               //................................
        });
    } 

由于这在其中使用Lambda,因此如果在调试时编辑了代码,它将强制再次运行应用程序。

请让我知道任何其他可能的解决方案,在该解决方案中,我可以在所有方法中实施Try Catch并调试我的代码而不会费劲。

c#大神给出的解决方案

不要将所有内容都包装在try-catch中。在地方使用try-catch
通常情况下,您可能会在没有代码错误的情况下看到异常,例如IO操作。如果包装了所有内容,则实际上可能会使测试和调试更加困难,从而导致较低质量的代码。让漏洞冒出来,并在开发的早期阶段将其捕获。
编写一个处理程序方法来执行日志记录以及您要在try-catch中执行的所有其他常见操作,并在catch块中简单地使用该方法。
通过预订AppDomain.Current.UnhandledException事件,使用全局异常处理程序记录由try-catch块未处理的异常。

LeetCode题解计算机为什么是基于二进制的?

可以是三进制么?二进制有什么好处?题解:为什么叫电子计算机?算盘应该没有二进制

LeetCode题解深度优先遍历和回溯的关系?

深度优先遍历的范围更大还是回溯的范围更大?为什么?题解:我的理解是:dfs是回溯思想的一种体现- 回溯:是在整个搜索空间中搜索出可行解,在搜索过程中不断剪枝回退,这是回溯的思想,这个搜索空间并没有限制于特定的数据结构。- dfs:dfs是指特定的数据结构中如图,树(特殊的图)中搜索答案,范围限制在了特定的数据结构。个人拙见。

LeetCode题解盲人买袜子。

他们都各自买了两对黑袜和两对白袜,八对袜子的布质、大小完全相同,而每对袜子都有一张商标纸连着。两位盲人不小心将八对袜子混在一起。他们每人怎样才能取回黑袜和白袜各两对呢?题解:暴力破解, 把袜子都拆开 一人一只 哈哈

LeetCode题解白石搭白塔

输入黑块和白块的数量,用输入的方块数目建塔,输出最大高度和种数,两种方法至少一层颜色不同才能算不同的方法塔满足下列要求:1. 塔底层块数和高度数值相同,逐层递减1,最高层为12. 每层颜色相同

LeetCode题解分鸡块

外卖鸡块分别有 4,6,12 块, 每 固定块数不能分开装, 用户给一个数字, 要求返回满足用户订单(可以等于也可以大于)的最少的盒数的组合