Derlemede ortam değişkenleri kullanma
Projeleri oluştururken, genellikle proje dosyasında olmayan bilgileri veya projenizi oluşturan dosyaları kullanarak derleme seçeneklerini ayarlamak gerekir. Bu bilgiler genellikle ortam değişkenlerinde depolanır.
Başvuru ortamı değişkenleri
Geçerli MSBuild özellik adları olan tüm ortam değişkenleri, Microsoft Build Engine (MSBuild) proje dosyasında özellik olarak kullanılabilir. Geçerli özellik adları MSBuild özelliklerinde açıklanmıştır. Örneğin, bir sayı ile başlayan ortam değişkenleri MSBuild'de kullanılamaz.
Dekont
Proje dosyası, ortam değişkeniyle aynı ada sahip bir özelliğin açık tanımını içeriyorsa, proje dosyasındaki özellik ortam değişkeninin değerini geçersiz kılar.
MSBuild projesinde ortam değişkeni kullanmak için
Ortam değişkenine, proje dosyanızda bildirilen bir değişkenle aynı şekilde başvurun. Örneğin, aşağıdaki kod BIN_PATH ortam değişkenine başvurur:
<FinalOutput>$(BIN_PATH)\MyAssembly.dll</FinalOutput>
Ortam değişkeni ayarlanmadıysa bir özellik için varsayılan değer sağlamak üzere bir öznitelik kullanabilirsiniz
Condition
.
Bir özellik için varsayılan değer sağlamak için
Condition
Yalnızca özelliğin değeri yoksa değeri ayarlamak için bir özellikte özniteliğini kullanın. Örneğin, aşağıdaki kod yalnızca ortam değişkeni ayarlanmadıysa özelliğini c:\tools olarak ayarlarToolsPath
:ToolsPath
<ToolsPath Condition="'$(TOOLSPATH)' == ''">c:\tools</ToolsPath>
Dekont
Özellik adları büyük/küçük harfe duyarlı değildir, bu nedenle her ikisi de
$(ToolsPath)
aynı$(TOOLSPATH)
özelliğe veya ortam değişkenine başvurur.
Örnek
Aşağıdaki proje dosyası, dizinlerin konumunu belirtmek için ortam değişkenlerini kullanır.
<Project DefaultTargets="FakeBuild">
<PropertyGroup>
<FinalOutput>$(BIN_PATH)\myassembly.dll</FinalOutput>
<ToolsPath Condition=" '$(ToolsPath)' == '' ">
C:\Tools
</ToolsPath>
</PropertyGroup>
<Target Name="FakeBuild">
<Message Text="Building $(FinalOutput) using the tools at $(ToolsPath)..."/>
</Target>
</Project>