각 빌드의 일부 메서드 / 클래스를 무시하고 두 개의 다른 프레임 워크에 대해 두 개의 다른 DLL을 출력하도록 클래스 라이브러리를 빌드하려면 어떻게해야합니까?

코티

.net2.0 호환 코드와 .net5 호환 코드가 모두 포함 된 클래스 라이브러리가 있다고 가정 해 보겠습니다. .net2.0 빌드를 빌드 할 때 .net5 코드가 무시되는 두 프레임 워크 모두에 대한 프로젝트를 빌드 할 수 있기를 원합니다. 이렇게하면 두 프레임 워크를 모두 충족하면서 하나의 버전 만 유지할 수 있습니다.

디에고 캐러 칼

체크 # 정의 와 함께 #if...이 프리 컴파일러 테스트를 설정하고 그것을 달성 할 수있는 방법이의는 ... 다른 간단한 옵션이있을 수 있습니다, 그러나 이것은 대부분 C처럼 작동 ++

다음은 링크의 예입니다.

#define DEBUG  
//#define TRACE  
#undef TRACE  

using System;  

public class TestDefine  
{  
  static void Main()  
   {  
     #if (DEBUG)  
       Console.WriteLine("Debugging is enabled.");  
     #endif  

     #if (TRACE)  
       Console.WriteLine("Tracing is enabled.");  
     #endif  
   }  
 }  
// Output:  
// Debugging is enabled.  

아이디어는 만들 수 있도록 #define NET5하고 #define NET2당신이 컴파일 무엇에 따라 정의 된 하나의 코드에 테스트를합니다. 그런 식으로 컴파일러는 둘 중 하나를 무시합니다.

 #define NET5
 #define NET2

 #if (NET5)  
       NET5 code...
 #endif

 #if (NET2)  
       NET2 code...
 #endif

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관