Hedef toplu işlemde öğe meta verileriyle çalışma
MSBuild, derleme hedefinin giriş ve çıkışlarında bağımlılık analizi gerçekleştirebilir. Hedefin girişlerinin veya çıkışlarının güncel olduğu belirlenirse hedef atlanır ve derleme devam eder. Target
öğeleri, bağımlılık analizi sırasında denetlenecek öğeleri belirtmek için ve Outputs
özniteliklerini kullanırInputs
.
Hedef, giriş veya çıkış olarak toplu öğeler kullanan bir görev içeriyorsa, Target
hedef öğesi msbuild'in Inputs
zaten güncel olan öğe toplu işlemlerini atlamasını sağlamak için veya Outputs
özniteliklerinde toplu işlem kullanmalıdır.
Batch hedefleri
Aşağıdaki örnek, öğe meta verilerine göre Culture
iki toplu işleme ayrılmış adlı Res
bir öğe listesi içerir. Bu toplu işlerden her biri göreve geçirilir AL
ve bu da her toplu iş için bir çıkış derlemesi oluşturur. MSBuild, öğesinin Outputs
Target
özniteliğinde toplu işlem kullanarak, hedefi çalıştırmadan önce tek tek toplu işlerden her birinin güncel olup olmadığını belirleyebilir. Hedef toplu işlem kullanılmadan, hedef her yürütülürken her iki öğe toplu işlemi de görev tarafından çalıştırılır.
<Project
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Res Include="Strings.fr.resources">
<Culture>fr</Culture>
</Res>
<Res Include="Strings.jp.resources">
<Culture>jp</Culture>
</Res>
<Res Include="Menus.fr.resources">
<Culture>fr</Culture>
</Res>
<Res Include="Dialogs.fr.resources">
<Culture>fr</Culture>
</Res>
<Res Include="Dialogs.jp.resources">
<Culture>jp</Culture>
</Res>
<Res Include="Menus.jp.resources">
<Culture>jp</Culture>
</Res>
</ItemGroup>
<Target Name="Build"
Inputs="@(Res)"
Outputs="%(Culture)\MyApp.resources.dll">
<AL Resources="@(Res)"
TargetType="library"
OutputAssembly="%(Culture)\MyApp.resources.dll">
</AL>
</Target>
</Project>
İlgili içerik
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin