CA2219: exception 절에서 예외를 발생시키지 마십시오.

속성
규칙 ID CA2219
타이틀 exception 절에서 예외를 발생시키지 마세요.
범주 사용 현황
수정 사항이 주요 변경인지 여부 작업을 중단하지 않는 변경, 호환성이 손상되는 변경
.NET 8에서 기본적으로 사용 제안 사항

원인

finally, 필터 또는 오류 절에서 예외가 throw됩니다.

규칙 설명

예외 절에서 예외가 발생하면 디버깅이 많이 어려워집니다.

finally 또는 오류 절에서 예외가 발생하는 경우 새 예외가 활성 예외를 숨깁니다(있을 경우). 이로 인해 원래 오류를 탐지 및 디버그하기 어려워집니다.

필터 절에서 예외가 발생하면 런타임은 예외를 자동으로 catch하고 필터를 false로 평가합니다. 오류로 평가되는 필터와 필터에서 throw되는 예외의 차이를 알 수 있는 방법은 없습니다. 이렇게 하면 필터 논리에서 오류를 탐지하고 디버그하기가 어렵습니다.

위반 문제를 해결하는 방법

이 규칙 위반 문제를 해결하려면 finally, 필터 또는 오류 절에서 명시적으로 예외를 발생시키지 마세요.

경고를 표시하지 않는 경우

이 규칙에 대한 경고를 표시해야 합니다. 예외 절에서 발생하는 예외가 실행 코드에 대한 이점을 제공하는 시나리오는 없습니다.

CA1065: 예기치 않은 위치에서 예외를 발생시키지 마십시오.

참고 항목