小编Kow*_*Tom的帖子

是否有可能在.Net中传递调用堆栈之前从类中的任何方法捕获所有未处理的异常?

问题:

我想从类中的任何方法中捕获任何异常,以便我可以将特定于类的数据记录到异常中,以便在它向上传递到堆栈之前进行记录.我知道我可以在类的每个方法中放置一个try-catch,但是有很多方法,似乎应该有一个更有效的方法.

我目前在做什么的例子:

public class ClassA
{
    private int x;
    private int y;

    public void Method1()
    {
        try
        {
           //Some code
        }
        catch(Exception ex)
        {
            ex.Data.Add("x", x);
            ex.Data.Add("y", y);
            throw;
        }
    }

    public void Method2()
    {
        try
        {
            //Some code
        }
        catch (Exception ex)
        {
            ex.Data.Add("x", x);
            ex.Data.Add("y", y);
            throw;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我想做的例子:

public class ClassB : IUnhandledErrorHandler
{
    private int x;
    private int y;

    public void Method1()
    {
        //Some code
    }

    public void Method2()
    {
        //Some code
    } …
Run Code Online (Sandbox Code Playgroud)

.net c# vb.net error-handling .net-4.0

12
推荐指数
1
解决办法
2453
查看次数

如何使用单个 PowerShell 命令查看所有计算机级环境变量?

我可以用它来获取所有用户环境变量:

Get-ChildItem -Path Env:\
Run Code Online (Sandbox Code Playgroud)

这是为了获得一个环境变量:

[System.Environment]::GetEnvironmentVariable('PATH','machine')
Run Code Online (Sandbox Code Playgroud)

但是我可以使用什么命令来查看所有机器级别的环境变量?

powershell environment-variables

4
推荐指数
1
解决办法
1879
查看次数