부모글 보이기/감추기 AD BLOCK 해제 요청 이 글에는 광고가 많이 들어가 있지 않습니다. adblock을 해제하셔도 글을 읽는데 그다지 부담이 없으니 해제를 부탁드립니다. Exception Handling Changes in C# 2.0 ; http://mark.michaelis.net/Blog/ExceptionHandlingChangesInC20.aspx .NET 1.0/1.1 까지만 해도 try / catch 로 잡을 수 있는 예외 유형은 오직 System.Exception에서만 파생되는 클래스만이 가능했습니다. 만약, System.Exception 에서 상속되지 않은 유형의 예외를 처리하고 싶다면 비어 있는 catch 블록 구문을 사용해야 했습니다. 예를 들어 다음과 같은 코드입니다. using System; class Program { static void Main() { try { Console.WriteLine("Hello. My name is Inigo Montoya."); } catch(Exception) { // … } catch { Console.WriteLine("UNEXPECTED EXCEPTION"); } } } 하지만, .NET 2.0에서는 System.Exception 에서 파생되지 않은 예외가 발생한 경우에도 catch 가 가능하도록 System.Runtime.CompilerServices.RuntimeWrappedException 클래스가 새롭게 추가되었습니다. 따라서, 이제 더 이상 비어있는 catch 문을 사용하지 않고도 예외를 잡는 것이 가능해졌습니다. 또한 RuntimeWrappedException 클래스 자체도 System.Exception에서 파생되었기 때문에 이전의 비어있는 catch 문을 대신해서 "System.Exception"을 catch 해도 동일한 효과를 얻을 수 있습니다. 만약, .NET 2.0의 새로운 규칙을 따르지 않고 이전처럼 예외처리를 하고 싶다면 다음과 같은 특성을 적용하면 .NET 1.0/1.1 에서의 예외처리가 적용이 됩니다. [assembly:System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows = false)] [이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.] [다음 글] IIS : 12. 비스타 버전별 IIS 기능 차이[이전 글] TFS : 70. 웹 서비스 구현 없이 TFS 통지 받기 [최초 등록일: 1/28/2007] [최종 수정일: 3/6/2007] 비밀번호 댓글 작성자 1 2 [3] 4 5 6 7 8 9 10 11 12 13 14 15 ... NoWriterDateCnt.TitleFile(s) 1129정성태2/14/201120948.NET : 113. Running .NET applications in-process using AppDomains1128정성태2/13/201121896개발 환경 구성: 143. Visual Studio 소스 서버 보안 경고창 없애기1127정성태2/5/201121249개발 환경 구성: 142. Internet Explorer 6, 7, 8, 9 테스트 - 다중 XP Mode1126정성태1/28/201127495개발 환경 구성: 141. 키보드 매핑을 바꾸는 레지스트리 설정11125정성태12/24/201020293VS.NET IDE : 59. Visual Studio 2010 - 웹 프로젝트의 Web.debug.config / Web.Release.config 기능을 일반 프로젝트에 적용하는 방법1124정성태11/16/201028887개발 환경 구성: 140. 대용량 파일 고속 전송: Rapidant1123정성태11/11/201018685Web : 8. IE 9 플랫폼 프리뷰 6 + IE 9 베타1122정성태11/9/201018979개발 환경 구성: 139. RemoteFX - USB Rediection1121정성태11/6/201017985.NET : 112. The F# PowerPack, with F# Compiler Source Drops1120정성태10/20/201019554Web : 7. Internet Explorer - Browser Mode 와 Document Mode1119정성태10/9/201018786IIS : 32. Steps for setting up a custom identity of an IIS 6 application pool1118정성태9/17/201017293Web : 6. Internet Explorer 9 Beta Guide for Developers1117정성태8/25/201017559.NET : 111. Azure CDN Guide Available1116정성태8/24/201017402Web : 5. IE 9 - UI 보더 변경에 따른 2-pixel 변화1115정성태6/18/201019064개발 환경 구성: 138. 프로세스 덤프를 하는 다양한 방법1114정성태6/1/201017390.NET : 110. C#5 and Meta-Programming [1]1113정성태4/27/201018309VS.NET IDE : 58. Visual Studio 2010에 기본 내장된 WPF Tree Visualizer1112정성태4/15/201018091개발 환경 구성: 137. How to enable remote connections in SQL Server 2008?1111정성태4/2/201016721VS.NET IDE : 57. Simulating Peak Load with VS Load Tests1110정성태3/30/201018126Windows 7: 4. Windows 7 / R2부터 제공되는 NT 서비스 전용 계정1109정성태3/17/201018570개발 환경 구성: 136. SCVMM에서 VM을 Template로 만들어서 Library에 넣은 후 새로운 VM 배포하기 1107정성태3/1/201017953.NET : 109. .NET 4.0에서 obsolete로 처리되는 타입1106정성태2/24/201018616IIS : 31. Microsoft Application Request Routing (ARR)과 TFS App Tier1105정성태2/9/201017488Debug : 46. 프로세스 종료 시 덤프 남기는 방법1104정성태1/26/201017805Debug : 45. Debugging References with Graph Visualizations1103정성태11/18/200917159개발 환경 구성: 135. How to Configure WPL v1.0 SRE 1 2 [3] 4 5 6 7 8 9 10 11 12 13 14 15 ...