Şablonun çıktısını üretmek için kullanabileceğim bir sınıf oluşturmak için TextTemplatingFilePreprocessor ile kullanılan bir T4 şablonum var.T4 şablonları içinde Koşullu derleme sembolleri kullanılabilir
T4 şablonunun başında birkaç ad alanı alıyorum. Örneğin.
<#@ import namespace="Company.ProductX.Widgets" #>
<#@ import namespace="Company.ProductX.Services" #>
//...
I (aynı arabirimleri sağlamak ancak ProductX işlevselliği farklı) ad başka bir dizi ile bu ithalat dışarı geçiş Preprocessor Directives kullanmak istiyorum. Örneğin. Yukarıdaki örnek ile
<#
#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
#>
ithalatı bakılmaksızın önişlemci direktifi sınıfına karşılık gelen kullanarak ifadeleri oluşturmak görünüyor. Örneğin.
using Company.ProductX.Widgets
using Company.ProductX.Services
using Company.ProductY.Widgets
using Company.ProductY.Services
şablonu kendisi yerine sadece şablon çıkışını etkileyecek T4 şablonları Önişlemciler kullanmak için başka bir yolu var mı?
Bunu yapmak için 'başlık' şablonlarını kullanıyoruz ve iyi çalıştığını görüyoruz. Ürüne yerleşik direktiflerin etrafına koşulların eklenmesi için bir yol yoktur. – GarethJ
Cevabınız için teşekkürler. Bu iyi bir iş gibi geliyor. Çalıştığım zaman çözüm olarak işaretleyeceğim. –