Nasıl yapılır: yapı dosyaları seçin
Ne zaman, yapı birkaç dosya içeren bir proje , yapabilecekleriniz her dosyayı ayrı ayrı proje dosyasında listelemek veya bir dizin veya dizinleri iç içe kümesi tüm dosyaları içermek için joker karakterler kullanabilirsiniz.
Girişleri belirleme
Öğeleri bir yapıiçin girişleri temsil eder.Öğeler hakkında daha fazla bilgi için bkz: MSBuild öğeleri.
Bir yapıiçin dosyaları eklemek için öğe listesinde dahil edilmesi MSBuild proje dosyası. Birden çok dosya öğe listeleri için dosyaları tek tek ekleme veya aynı anda çok sayıda dosya eklemek için joker karakterler kullanılarak eklenebilir.
tanımlamak için tek tek öğeleri
Use Include benzer öznitelikleri aşağıdaki:
<CSFile Include="form1.cs"/>
-veya-
<VBFile Include="form1.vb"/>
[!NOT]
Maddeler bir öğekoleksiyon proje dosyası ile aynı dizinde değilse, tam veya öğe göreli yol belirtmeniz gerekir. Örneğin: Include="..\..\form2.cs".
tanımlamak için birden çok öğe
Use Include benzer öznitelikleri aşağıdaki:
<CSFile Include="form1.cs;form2.cs"/>
-veya-
<VBFile Include="form1.vb;form2.vb"/>
Joker karakter olarak girişleri belirleme
Ayrıca kullanabileceğiniz joker karakterler için yinelemeli bir yapıiçin girişleri olarak dahil tüm dosya ve alt dizinleri yalnızca belirli dosyaları.Joker karakterler hakkında daha fazla bilgi için bkz:MSBuild öğeleri
Aşağıdaki örneklerde, proje dizininde bulunan proje dosyası aşağıdaki dizinlerinde ve alt dizinlerinde, grafik dosyaları içeren bir proje dayanır:
Project\Images\BestJpgs
Project\Images\ImgJpgs
Project\Images\ImgJpgs\Img1
Görüntüleri dizin ve alt dizinlerindeki tüm .jpg dosyaları eklemek için
Aşağıdaki Include öznitelik:
Include="Images\**\*.jpg"
"İmg" ile başlayan tüm .jpg dosyaları eklemek için
Aşağıdaki Include öznitelik:
Include="Images\**\img*.jpg"
"Jpg"formatından biten adları ile dizinlerindeki tüm dosyaları içermek için
Aşağıdakilerden birini kullanın Include öznitelikleri:
Include="Images\**\*jpgs\*.*"
-veya-
Include="Images\**\*jpgs\*"
Bir görevi iletme maddelere
proje dosyasında kullanabileceğiniz bir yapıiçin giriş olarak tüm öğe listesi belirtmek için görevler gösterimde () @.Tüm dosyaları ayrı olarak listelemek veya joker bu gösterim kullanabilirsiniz.
Tüm Visual C# veya Visual Basic dosyaları giriş olarak kullanmak için
Use Include öznitelikleri aşağıdakine benzer:
<CSC Sources="@(CSFile)">...</CSC>
-veya-
<VBC Sources="@(VBFile)">...</VBC>
[!NOT]
Joker karakterler için kayar öğelerle girdileri bir yapıiçin kullanmanız gerekir; girdileri kullanarak belirtemezsiniz Sources öznitelik MSBuild gibi görevler Csc veya Vbc. Aşağıdaki örnek bir proje dosyasında geçerli değil:
<CSC Sources="*.cs">...</CSC>
Örnek
Aşağıdaki kod örneği, tüm giriş dosyaları ayrı olarak içeren bir proje gösterir.
<Project DefaultTargets="Compile"
xmlns="https://schemas.microsoft.com/developer/msbuild/2003" >
<PropertyGroup>
<Builtdir>built</Builtdir>
</PropertyGroup>
<ItemGroup>
<CSFile Include="Form1.cs"/>
<CSFile Include="AssemblyInfo.cs"/>
<Reference Include="System.dll"/>
<Reference Include="System.Data.dll"/>
<Reference Include="System.Drawing.dll"/>
<Reference Include="System.Windows.Forms.dll"/>
<Reference Include="System.XML.dll"/>
</ItemGroup>
<Target Name="PreBuild">
<Exec Command="if not exist $(builtdir) md $(builtdir)"/>
</Target>
<Target Name="Compile" DependsOnTargets="PreBuild">
<Csc Sources="@(CSFile)"
References="@(Reference)"
OutputAssembly="$(builtdir)\$(MSBuildProjectName).exe"
TargetType="exe" />
</Target>
</Project>
Aşağıdaki kod örneği, tüm .cs dosyalarını eklemek için joker karakter kullanır.
<Project DefaultTargets="Compile"
xmlns="https://schemas.microsoft.com/developer/msbuild/2003" >
<PropertyGroup>
<builtdir>built</builtdir>
</PropertyGroup>
<ItemGroup>
<CSFile Include="*.cs"/>
<Reference Include="System.dll"/>
<Reference Include="System.Data.dll"/>
<Reference Include="System.Drawing.dll"/>
<Reference Include="System.Windows.Forms.dll"/>
<Reference Include="System.XML.dll"/>
</ItemGroup>
<Target Name="PreBuild">
<Exec Command="if not exist $(builtdir) md $(builtdir)"/>
</Target>
<Target Name="Compile" DependsOnTargets="PreBuild">
<Csc Sources="@(CSFile)"
References="@(Reference)"
OutputAssembly="$(builtdir)\$(MSBuildProjectName).exe"
TargetType="exe" />
</Target>
</Project>
Ayrıca bkz.
Görevler
Nasıl yapılır: oluşturma dosyaları dışlayın