템플릿의 출력을 생성하는 데 사용할 수있는 클래스를 생성하기 위해 TextTemplatingFilePreprocessor와 함께 사용되는 T4 템플릿이 있습니다.조건부 컴파일 기호를 T4 템플릿 내에서 사용할 수 있습니까
T4 템플릿의 시작 부분에서 여러 개의 네임 스페이스를 가져옵니다. 예 :
<#@ import namespace="Company.ProductX.Widgets" #>
<#@ import namespace="Company.ProductX.Services" #>
//...
나는 (동일한 인터페이스를 제공하지만 ProductX에 기능을 서로 다른) 네임 스페이스의 또 다른 세트와 이러한 수입을 전환 할 Preprocessor Directives를 사용하고 싶습니다. 예 :
<#
#if(ProductX)
{
#>
<#@ import namespace="Company.ProductX.Widgets" #>
<#@ import namespace="Company.ProductX.Services" #>
//...
<#
}
#endif
#>
<#
#if(ProductY)
{
#>
<#@ import namespace="Company.ProductY.Widgets" #>
<#@ import namespace="Company.ProductY.Services" #>
//...
<#
}
#endif
#>
위의 예제에서 가져 오기는 전 처리기 지시문과 상관없이 클래스에서 해당 using 문을 만드는 것처럼 보입니다. 예 :
T4 템플릿의 프리 프로세서를 사용하여 템플릿 출력이 아닌 템플릿 자체에 영향을주는 다른 방법이 있습니까?
우리는 이렇게 '헤더'템플릿을 사용하여 매우 잘 작동한다는 것을 알 수 있습니다. 제품에 내장 된 지시문 주위에 조건문을 삽입하는 방법은 없습니다. – GarethJ
답변 해 주셔서 감사합니다. 이것은 좋은 일처럼 들립니다. 일단 작동 시키면 해결책으로 표시됩니다. –