Pilih file yang akan dibuat
Saat Anda membuat proyek yang berisi beberapa file, Anda dapat mencantumkan setiap file secara terpisah dalam file proyek, atau Anda dapat menggunakan wildcard untuk menyertakan semua file dalam satu direktori atau sekumpulan direktori berlapis.
Tentukan input
Item mewakili input untuk build. Untuk informasi selengkapnya tentang item, lihat Item.
Untuk menyertakan file untuk build, file tersebut harus disertakan dalam daftar item dalam file proyek MSBuild. Beberapa file dapat ditambahkan ke daftar item dengan menyertakan file satu per satu atau menggunakan kartubebas untuk menyertakan banyak file sekaligus.
Untuk mendeklarasikan item satu per satu
Gunakan atribut
Include
yang mirip dengan hal berikut ini:<CSFile Include="form1.cs"/>
atau
<VBFile Include="form1.vb"/>
Catatan
Jika item dalam koleksi item tidak berada dalam direktori yang sama dengan file proyek, Anda harus menentukan jalur lengkap atau relatif ke item. Sebagai contoh:
Include="..\..\form2.cs"
.
Untuk mendeklarasikan beberapa item
Gunakan atribut
Include
yang mirip dengan hal berikut ini:<CSFile Include="form1.cs;form2.cs"/>
atau
<VBFile Include="form1.vb;form2.vb"/>
Tentukan input dengan kartubebas
Anda juga dapat menggunakan kartubebas untuk menyertakan semua file secara rekursif atau hanya file tertentu dari subdirektori sebagai input untuk build. Untuk informasi selengkapnya tentang kartubebas, lihat Item
Contoh berikut didasarkan pada proyek yang berisi file grafis di direktori dan subdirektori berikut, dengan file proyek yang terletak di direktori Proyek:
Project\Images\BestJpgs
Project\Images\ImgJpgs
Project\Images\ImgJpgs\Img1
Untuk menyertakan semua file .jpg dalam direktori dan subdirektori Gambar
Gunakan atribut berikut
Include
:Include="Images\**\*.jpg"
Untuk menyertakan semua file .jpg yang dimulai dengan img
Gunakan atribut berikut
Include
:Include="Images\**\img*.jpg"
Untuk menyertakan semua file dalam direktori dengan nama yang berakhiran jpg
Gunakan salah satu atribut
Include
berikut:Include="Images\**\*jpgs\*.*"
atau
Include="Images\**\*jpgs\*"
Meneruskan item ke tugas
Dalam file proyek, Anda bisa menggunakan notasi @() dalam tugas untuk menentukan seluruh daftar item sebagai input untuk build. Anda dapat menggunakan notasi ini apakah Anda mencantumkan semua file secara terpisah atau menggunakan wildcard.
Untuk menggunakan semua File Visual C# atau Visual Basic sebagai input
Gunakan atribut
Include
yang mirip dengan hal berikut ini:<CSC Sources="@(CSFile)">...</CSC>
atau
<VBC Sources="@(VBFile)">...</VBC>
Catatan
Anda harus menggunakan kartubebas dengan item untuk menentukan input untuk build; Anda tidak dapat menentukan input menggunakan atribut Sources
dalam tugas MSBuild seperti Csc atau Vbc. Contoh berikut tidak valid dalam file proyek:
<CSC Sources="*.cs">...</CSC>
Contoh 1
Contoh kode berikut menunjukkan proyek yang menyertakan semua file input secara terpisah.
<Project DefaultTargets="Compile"
xmlns="http://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>
Contoh 2
Contoh kode berikut menggunakan kartubebas untuk menyertakan semua file .cs.
<Project DefaultTargets="Compile"
xmlns="http://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>
Konten terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk