Item proyek MSBuild umum
Di MSBuild, item adalah referensi bernama ke satu atau beberapa file. Item berisi metadata seperti nama file, jalur, dan nomor versi. Semua jenis proyek di Visual Studio memiliki beberapa item yang sama. Item tersebut ditentukan dalam file Microsoft.Build.CommonTypes.xsd.
Artikel ini mencantumkan semua item proyek umum.
Referensi
Mewakili referensi rakitan (terkelola) dalam proyek.
Nama metadata item | Deskripsi |
---|---|
HintPath | String opsional. Jalur rakitan relatif atau absolut. |
Nama | String opsional. Nama tampilan rakitan, misalnya, "System.Windows.Forms." |
FusionName | String opsional. Menentukan nama fusi yang sederhana atau kuat untuk item. Ketika atribut ini ada, atribut ini dapat menghemat waktu karena file assembly tidak perlu dibuka untuk mendapatkan nama fusi. |
SpecificVersion | Boolean opsional. Menentukan apakah hanya versi dalam nama fusi yang harus dirujuk. |
Alias | String opsional. Alias apa pun untuk referensi. |
Privat | Boolean opsional. Menentukan apakah referensi harus disalin ke folder output. Atribut ini cocok dengan properti Salin Lokal dari referensi yang ada di IDE Visual Studio. |
COMReference
Mewakili referensi komponen COM (tidak terkelola) dalam proyek. Item ini hanya berlaku untuk proyek .NET.
Nama metadata item | Deskripsi |
---|---|
Nama | String opsional. Nama tampilan komponen. |
Guid | String yang diperlukan. GUID untuk komponen, dalam bentuk {12345678-1234-1234-1234-123456781234}. |
VersionMajor | String yang diperlukan. Bagian utama dari nomor versi komponen. Misalnya, "5" jika nomor versi lengkapnya adalah "5.46." |
VersionMinor | String yang diperlukan. Bagian kecil dari nomor versi komponen. Misalnya, "46" jika nomor versi lengkapnya adalah "5.46." |
EmbedInteropTypes | Boolean opsional. Jika true, sematkan jenis interop dari referensi ini langsung ke rakitan Anda daripada membuat DLL interop. |
Lcid | String opsional. LocaleID untuk komponen. |
WrapperTool | String opsional. Nama alat pembungkus yang digunakan pada komponen. Nilainya adalah: 1. primer 2. tlbimp 3. primaryortlbimp 4. aximp |
Terpisah | Boolean opsional. Menentukan apakah komponen tersebut adalah komponen bebas reg. |
COMFileReference
Mewakili daftar pustaka jenis yang diteruskan ke parameter TypeLibFiles
target ResolveComReference. Item ini hanya berlaku untuk proyek .NET.
Nama metadata item | Deskripsi |
---|---|
WrapperTool | String opsional. Nama alat pembungkus yang digunakan pada komponen. Nilainya adalah: 1. primer 2. tlbimp 3. primaryortlbimp 4. aximp |
NativeReference
Mewakili file manifes asli atau referensi ke file tersebut.
Nama metadata item | Deskripsi |
---|---|
Nama | String yang diperlukan. Nama dasar file manifes. |
HintPath | String yang diperlukan. Jalur relatif file manifes. |
ProjectReference
Mewakili referensi ke proyek lain. Item ProjectReference
diubah menjadi item Referensi oleh target ResolveProjectReferences
, sehingga metadata yang valid pada Referensi mungkin valid pada ProjectReference
, jika proses transformasi tidak menimpanya.
Nama metadata item | Deskripsi |
---|---|
Nama | String opsional. Nama tampilan referensi. |
GlobalPropertiesToRemove | string[] opsional. Nama properti yang akan dihapus saat membuat proyek yang dirujuk, misalnya RuntimeIdentifier;PackOnBuild . Default untuk kosong. |
Project | String opsional. GUID untuk referensi, dalam formulir {12345678-1234-1234-1234-123456781234}. |
OutputItemType | String opsional. Jenis item untuk memancarkan output target ke dalamnya. Defaultnya kosong. Jika metadata Referensi diatur ke "true" (default), maka output target menjadi referensi untuk pengkompilasi. |
ReferenceOutputAssembly | Boolean opsional. Jika diatur ke false , tidak menyertakan output proyek yang dirujuk sebagai Referensi proyek ini, tetapi masih memastikan bahwa proyek lain dibangun sebelum proyek ini. Default ke true . |
Privat | Boolean opsional. Menentukan apakah referensi harus disalin ke folder output. Atribut ini cocok dengan properti Salin Lokal dari referensi yang ada di IDE Visual Studio. |
SetConfiguration | String opsional. Mengatur Configuration properti global untuk proyek yang dirujuk, misalnya Configuration=Release . |
SetPlatform | String opsional. Mengatur Platform properti global untuk proyek yang dirujuk, misalnya Platform=AnyCPU . |
SetTargetFramework | String opsional. Mengatur TargetFramework properti global untuk proyek yang dirujuk, misalnya TargetFramework=netstandard2.0 . |
SkipGetTargetFrameworkProperties | Boolean opsional. Jika true , membuat proyek yang dirujuk tanpa menegosiasikan nilai TargetFramework yang paling kompatibel. Default ke false . |
Target | string[] opsional. Daftar target yang dipisahkan titik koma dalam proyek yang dirujuk yang harus dibuat. Defaultnya adalah nilai $(ProjectReferenceBuildTargets) , yang defaultnya kosong, menunjukkan target default. Saat membangun di Visual Studio (dibandingkan MSBuild.exe dengan atau dotnet build ), menentukan hal ini tidak mencegah Visual Studio membangun target default proyek yang direferensikan. |
Catatan
Ada perbedaan antara cara kerja referensi proyek antara .NET Framework dan .NET Core (termasuk .NET 5 dan yang lebih baru). Dalam proyek .NET Framework, referensi proyek tidak transitif. Artinya, jika Project1 mereferensikan Project2, dan Project2 mereferensikan Project3, Anda tidak dapat membuat kode terhadap Project3 dari Project1. Namun, di .NET Core (termasuk .NET 5 dan yang lebih baru), referensi proyek bersifat transitif. Anda dapat membuat kode terhadap Project3 di Project1.
Mengompilasi
Mewakili file sumber untuk pengompilasi.
Nama metadata item | Deskripsi |
---|---|
DependentUpon | String opsional. Menentukan file yang bergantung pada file ini untuk dikompilasi dengan benar. |
AutoGen | Boolean opsional. Menunjukkan apakah file dibuat untuk proyek oleh lingkungan pengembangan terintegrasi (IDE) Visual Studio. |
Tautan | String opsional. Jalur notasi yang akan ditampilkan jika file secara fisik terletak di luar pengaruh file proyek. |
Dapat dilihat | Boolean opsional. Menunjukkan apakah akan menampilkan file di Penjelajah Solusi di Visual Studio. |
CopyToOutputDirectory | String opsional. Menentukan apakah akan menyalin file ke direktori output. Nilainya adalah: 1. Tidak pernah 2. Selalu 3. PreserveNewest |
EmbeddedResource
Mewakili sumber daya yang akan disematkan dalam rakitan yang dibuat.
Nama metadata item | Deskripsi |
---|---|
DependentUpon | String opsional. Menentukan file yang bergantung pada file ini untuk dikompilasi dengan benar |
Generator | String opsional. Nama generator file yang dijalankan pada item ini. |
LastGenOutput | String opsional. Nama file yang dibuat oleh generator file yang berjalan pada item ini. |
CustomToolNamespace | String opsional. Namespace layanan di mana generator file yang berjalan pada item ini harus membuat kode. |
Tautan | String opsional. Jalur notasi ditampilkan jika file secara fisik terletak di luar pengaruh proyek. |
Dapat dilihat | Boolean opsional. Menunjukkan apakah akan menampilkan file di Penjelajah Solusi di Visual Studio. |
CopyToOutputDirectory | String opsional. Menentukan apakah akan menyalin file ke direktori output. Nilainya adalah: 1. Tidak pernah 2. Selalu 3. PreserveNewest |
LogicalName | String yang diperlukan. Nama logis sumber daya yang disematkan. |
Konten
Mewakili file yang tidak dikompilasi ke dalam proyek, tetapi dapat disematkan atau diterbitkan bersama dengannya.
Nama metadata item | Deskripsi |
---|---|
DependentUpon | String opsional. Menentukan file yang bergantung pada file ini untuk dikompilasi dengan benar. |
Generator | String opsional. Nama generator file yang berjalan pada item ini. |
LastGenOutput | String opsional. Nama file yang dibuat oleh generator file yang dijalankan pada item ini. |
CustomToolNamespace | String opsional. Namespace layanan di mana generator file yang berjalan pada item ini harus membuat kode. |
Tautan | String opsional. Jalur notasi yang akan ditampilkan jika file secara fisik terletak di luar pengaruh proyek. |
PublishState | String yang diperlukan. Status penerbitan konten, baik: - Default - Disertakan - Dikecualikan - DataFile - Prasyarat |
IsAssembly | Boolean opsional. Menentukan apakah file tersebut adalah rakitan. |
Dapat dilihat | Boolean opsional. Menunjukkan apakah akan menampilkan file di Penjelajah Solusi di Visual Studio. |
CopyToOutputDirectory | String opsional. Menentukan apakah akan menyalin file ke direktori output. Nilainya adalah: 1. Tidak pernah 2. Selalu 3. PreserveNewest |
TargetPath | String opsional. Jalur output (relatif terhadap direktori output khusus konfigurasi dan/atau platform) dari item, termasuk nama file. Ini menghormati Link metadata, jika disediakan. Jika TargetPath tidak disediakan, target akan dihitung selama proses build. Lihat AssignTargetPath. |
Tidak
Mewakili file yang seharusnya tidak memiliki peran dalam proses build.
Nama metadata item | Deskripsi |
---|---|
DependentUpon | String opsional. Menentukan file yang bergantung pada file ini untuk dikompilasi dengan benar. |
Generator | String opsional. Nama generator file yang dijalankan pada item ini. |
LastGenOutput | String opsional. Nama file yang dibuat oleh generator file yang berjalan pada item ini. |
CustomToolNamespace | String opsional. Namespace layanan di mana generator file yang berjalan pada item ini harus membuat kode. |
Tautan | String opsional. Jalur notasi yang akan ditampilkan jika file secara fisik terletak di luar pengaruh proyek. |
Dapat dilihat | Boolean opsional. Menunjukkan apakah akan menampilkan file di Penjelajah Solusi di Visual Studio. |
CopyToOutputDirectory | String opsional. Menentukan apakah akan menyalin file ke direktori output. Nilainya adalah: 1. Tidak pernah 2. Selalu 3. PreserveNewest |
AssemblyMetadata
Mewakili atribut rakitan yang akan dibuat sebagai [AssemblyMetadata(key, value)]
.
Nama metadata item | Deskripsi |
---|---|
Memasukkan | Menjadi parameter pertama (kunci) dalam konstruktor atribut AssemblyMetadataAttribute . |
Nilai | String yang diperlukan. Menjadi parameter kedua (nilai) dalam konstruktor atribut AssemblyMetadataAttribute . |
Catatan
Item ini berlaku untuk proyek yang menggunakan SDK untuk .NET 5 (dan .NET Core) dan versi yang lebih baru.
InternalsVisibleTo
Menentukan rakitan yang akan dipancarkan sebagai atribut rakitan [InternalsVisibleTo(..)]
.
Nama metadata item | Deskripsi |
---|---|
Memasukkan | Nama rakitan. |
Tombol | String opsional. Kunci umum rakitan. |
Catatan
Item ini berlaku untuk proyek yang menggunakan SDK untuk .NET 5 (dan .NET Core) dan versi yang lebih baru.
BaseApplicationManifest
Mewakili manifes aplikasi dasar untuk build, dan berisi informasi keamanan penyebaran ClickOnce.
CodeAnalysisImport
Mewakili proyek FxCop yang akan diimpor.
Impor
Mewakili rakitan yang namespace layanannya harus diimpor oleh pengompilasi Visual Basic.
Folder
Elemen ini hanya digunakan oleh Visual Studio sebagai tempat penampung untuk folder kosong. Ketika folder diisi, folder digantikan oleh elemen lain.