연결된 예외는 예외를 처리하는 일련의 try-catch 문입니다. 일련의 예외, 즉 연쇄 예외를 생성하려면 -
첫 번째 try-catch 설정 -
예시
static void Main(string[] args) { try { One(); } catch (Exception e) { Console.WriteLine(e); } }
이제 One() −
메서드에서 catch를 시도하십시오.예시
static void One() { try { Two(); } catch (Exception e) { throw new Exception("First exception!", e); } }
Two() 메서드도 연결 예외를 계속합니다.
예시
static void Two() { try { Three(); } catch (Exception e) { throw new Exception("Second Exception!", e); } }
이제 다음 방법입니다.
예시
static void Three() { try { Last(); } catch (Exception e) { throw new Exception("Third Exception!", e); } }
우리를 마지막까지 데려다줍니다.
예시
static void Last() { throw new Exception("Last exception!"); }
위를 실행할 때 예외는 다음과 같이 처리됩니다. -
System.Exception: First exception! ---< System.Exception: Middle Exception! ---< System.Exception: Last exception! at Demo.Two () [0x00000] in <199744cb72714131b4f5995ddd1a021f>:0 --- End of inner exception stack trace --- at Demo.Two () [0x00016] in <199744cb72714131b4f5995ddd1a021f>:0 at Demo.One () [0x00000] in <199744cb72714131b4f5995ddd1a021f>:0 --- End of inner exception stack trace --- at Demo.One () [0x00016] in <199744cb72714131b4f5995ddd1a021f>:0 at Demo.Main (System.String[] args) [0x00000] in <199744cb72714131b4f5995ddd1a021f>:0