내용 보기

작성자

관리자 (IP : 172.17.0.1)

날짜

2020-07-10 05:01

제목

[C#] #if 대신에 Conditional Attributes를 사용해라


public class Trace
{
            [Conditional("DEBUG")]
            public static void Msg(string msg)
            {
                Console.WriteLine(msg);
            }
}
 
 
 
static void Main(string[] args)
{
            Trace.Msg("Now in Main...");
 
}
cs

다음처럼 Conditional 어트리뷰트를 설정하면 debug중일때만 해당 메서드가 실행된다.

public class Trace
{
            [Conditional("TRACE_ON")]
            public static void Msg(string msg)
            {
                Console.WriteLine(msg);
            }
}
 
 
 
static void Main(string[] args)
{
            Trace.Msg("Now in Main...");
 
}
cs

위 처럼 어트리뷰트를 설정하면 using구문 위에 #define TRACE_ON가 정의되어 있는 경우만 해당 메서드가 실행된다.

출처1

출처2