최근에 현재 유지보수중인 솔루션의 에러 처리 로직 개선 작업을 하다가, 내가 아직도 Throw와 Throw ex의 차이를 모른다는 사실을 알게 되었다. -_-;; 그래서 구글신에게로 고고씽. ㅎ
역시 구글신께서 알려주신 Top 4개의 링크만으로 모든 궁금증이 풀렸다. 그 링크 목록은 다음과 같다.
Joteke's Blog - Difference: throw or throw ex?
Scott Dorman Blog - Difference between "throw" and "throw ex" in .NET
Mattness Encapsulated - throw; vs. throw ex; Here's the difference!
BULLOG.NET - 즈믄의 C# 강좌 - throw VS throw ex
정리하자면..
- Throw는 이전 Exception의 모든 내용을 보존하지만, Throw ex는 보존하지 않는다. 따라서 단순히 이전에 발생한 예외를 전달만 한다면, Throw를 쓰는 것이 좋다.
- 새롭게 예외를 포장(?)한다면 - New ApplicationException등을 사용해서 - 이전 예외 객체를 innerException으로 같이 넘기는 것이 좋다.
'.NET General' 카테고리의 다른 글
[Tip]Windows 2003 서버에서 VS.NET 2002 웹 프로젝트 만들기/열기 (0) | 2007.04.25 |
---|---|
[Article]COM+ Authentication Level (0) | 2007.02.12 |
[Tip]Windows Service 초기 작업 디버깅(VB.NET) (2) | 2007.02.06 |
[Etc]MS - PHP - Linux Alliance? (11) | 2006.11.03 |
[HowTo]FxCOP(비주얼 스튜디오 2005 코드 분석) Custom 규칙 작성하기(C#) (0) | 2006.07.25 |