-1

例外をキャッチして情報を追加し、呼び出し元のモジュールに対して新しい (強化された) 例外をスローしようとしています。

例:

    void CallingMethod()
    {
        try
        {
            doStuff();
        }
        catch(Exception e)
        {
            Console.WriteLine(e.ToString());
        }
    }

    void doStuff()
    {
        try
        {
            // do something here that may throw an error
        }
        catch(Exception e)
        {
            Exception e2 = new Exception("new added info", e);
            throw e2;
        }
        finally()
        {
            // cleanup
        }
    }

しかし、エラーが発生してコンソールに書き込まれると、それは元のエラーであり、文字列「new added info」を含む新しいエラーではありません。

これは期待されていますか?新しいエラーをキャッチするにはどうすればよいですか?

4

1 に答える 1