46.4 [Conditional] 특성 사용하기
닷넷에 내장된 특성 중에는 [Conditional]이 있습니다. 이 특성을 사용하면 특정 기호(symbol)에 따라 실행 여부를 결정할 수 있습니다. 다음 내용을 입력한 후 실행하세요.
[Conditional] 특성 사용: ConditionalDemo.cs
#define RELEASE //②-1 전처리기 지시문으로 RELEASE 기호 정의 using System; using System.Diagnostics; public class ConditionalDemo { static void Main() { DebugMethod(); ReleaseMethod(); } [Conditional("DEBUG")] //① DEBUG 기호(심벌)를 가지는 경우 실행 static void DebugMethod() => Console.WriteLine("디버그 환경에서만 표시"); //②-2 RELEASE 기호가 있는 경우 실행 [Conditional("RELEASE")] static void ReleaseMethod() => Console.WriteLine("릴리스 환경에서만 표시"); }
실행 결과
디버그 환경에서만 표시 릴리스 환경에서만 표시
비주얼 스튜디오의 도구 모음은 다음과 같이 Debug와 Release를 구분 지을 수 있는 드롭다운 리스트를 제공합니다. 이를 사용하여 프로그램에 DEBUG와 RELEASE 기호를 제공할 수 있습니다.
▲ 그림 46-2 비주얼 스튜디오의 빌드 방식 변경 드롭다운 리스트
[Conditional] 특성은 이러한 기호를 사용하여 특정 메서드를 실행할지 결정할 수 있습니다.