C# 조건부 컴파일 기호 #if #elif #else

2011.12.06 17:22 개발언어/C#.NET
컴파일을 할때 조건에 따라 컴파일을 할 필요가 있습니다. 소스코드의 맨앞에 #define을 선언하는 것보다 빌드에서 조건부 컴파일 기호를 입력하여 처리하는 것이 더 편합니다. 





코드는 아래와 같이 조건에 따라 컴파일 하게 관리하면 됩니다. 실제로 Release 하여 배포해야 할 경우에는 else 문을 실행하게 조건절에 없는 기호를 넣어 처리하면 됩니다.

//조건 컴파일
#if TESTDefine   //조건절1
e.AcceptCertificate = true;
#elif LOCALDefine  //조건절2
e.AcceptCertificate = true;
#else   //이도저도 아니면 실행
e.AcceptCertificate = false;
#endif

 

간단한 데모를 첨부하니 참고하세요.

참고사이트 
http://msdn.microsoft.com/ko-kr/library/4y6tbswk.aspx
http://www.dotnetperls.com/if-elif-endif
신고
  1. Favicon of http://minimonk.net BlogIcon 구차니비밀방문자
    2011.12.11 09:23 신고 edit/del reply

    리눅스 make 에서 외부 선언으로 처리하는것과 같은 방법이네요
    VS C++에서도 지원하지 않을까? 라는 상상도 안해봤는 하긴 하는군요 ㅋ

    • Favicon of http://ndolson.com BlogIcon 엔돌슨비밀방문자
      2011.12.13 11:56 신고 edit/del

      네 맞아요. VS에서도 설정을해주면 C#을 C++처럼 define을 사용할 수있다고 하네요.
      일단 조건 컴파일로 처리했어요. 관리에 어려움이 없어서요.