Bagikan melalui


Mengatur atribut assembly dalam kode

Atribut rakitan adalah nilai yang memberin informasi tentang rakitan. Mereka biasanya diatur dalam file AssemblyInfo.cs . Atribut dibagi menjadi kumpulan informasi berikut:

  • Atribut identitas rakitan
  • Atribut informasi
  • Atribut manifes rakitan
  • Atribut nama yang kuat

Artikel ini dicakup untuk menambahkan atribut rakitan dari kode. Untuk informasi tentang menambahkan atribut assembly ke proyek (bukan dalam kode), lihat Mengatur atribut assembly dalam file proyek.

Atribut identitas rakitan

Tiga atribut, bersama dengan nama yang kuat (jika ada), menentukan identitas rakitan: nama, versi, dan budaya. Atribut ini membentuk nama lengkap rakitan dan diperlukan saat mereferensikan rakitan dalam kode. Anda dapat menggunakan atribut untuk mengatur versi dan budaya rakitan. Pengompilasi atau Assembly Linker (Al.exe) menetapkan nilai nama saat rakitan dibuat, berdasarkan file yang berisi manifes rakitan.

Tabel berikut menjelaskan atribut versi dan budaya.

Atribut identitas rakitan Deskripsi
AssemblyCultureAttribute Bidang yang disebutkan mengindikasikan budaya yang didukung oleh rakitan. Rakitan juga dapat menentukan kemandirian budaya, mengindikasikan bahwa ia berisi sumber daya untuk budaya default. Catatan: Runtime memperlakukan rakitan apa pun yang tidak memiliki atribut budaya yang diatur ke null sebagai rakitan satelit. Rakitan semacam itu tunduk pada aturan pengikatan rakitan. Untuk informasi selengkapnya, lihat Cara runtime menemukan rakitan.
AssemblyFlagsAttribute Nilai yang menetapkan atribut rakitan, seperti apakah rakitan dapat dijalankan berdampingan.
AssemblyVersionAttribute Nilai numerik dalam format mayor.minor.build.revisi (misalnya, 2.4.0.0). Runtime bahasa umum menggunakan nilai ini untuk melakukan operasi pengikatan dalam rakitan bernama kuat. Catatan: Jika atribut AssemblyInformationalVersionAttribute tidak diterapkan ke rakitan, nomor versi yang ditentukan oleh atribut AssemblyVersionAttribute digunakan oleh properti Application.ProductVersion, Application.UserAppDataPath, dan Application.UserAppDataRegistry.

Contoh kode berikut menunjukkan cara menerapkan atribut versi dan budaya ke rakitan.

// Set version number for the assembly.
[assembly:AssemblyVersionAttribute("4.3.2.1")];
// Set culture as German.
[assembly:AssemblyCultureAttribute("de")];
// Set version number for the assembly.
[assembly:AssemblyVersionAttribute("4.3.2.1")]
// Set culture as German.
[assembly:AssemblyCultureAttribute("de")]
' Set version number for the assembly.
<Assembly:AssemblyVersionAttribute("4.3.2.1")>
' Set culture as German.
<Assembly:AssemblyCultureAttribute("de")>

Atribut informasi

Anda dapat menggunakan atribut informasi untuk memberi informasi perusahaan atau produk tambahan untuk perakitan. Tabel berikut menjelaskan atribut informasional yang dapat Anda terapkan ke rakitan.

Atribut informasional Deskripsi
AssemblyCompanyAttribute Nilai string yang menentukan nama perusahaan.
AssemblyCopyrightAttribute Nilai string yang menentukan informasi hak cipta.
AssemblyFileVersionAttribute Nilai string yang menentukan nomor versi file Win32. Ini biasanya default ke versi rakitan.
AssemblyInformationalVersionAttribute Nilai string menentukan informasi versi yang tidak digunakan oleh runtime bahasa umum, seperti nomor versi produk lengkap. Catatan: Jika atribut ini diterapkan ke rakitan, string yang ditentukannya dapat diperoleh pada durasi dengan menggunakan properti Application.ProductVersion. String juga digunakan di jalur dan kunci registri yang disediakan oleh properti Application.UserAppDataPath dan Application.UserAppDataRegistry.
AssemblyProductAttribute Nilai string yang menentukan informasi produk.
AssemblyTrademarkAttribute Nilai string yang menentukan informasi merek dagang.

Atribut ini dapat muncul di halaman Properti Windows dari rakitan, atau dapat ditimpa menggunakan opsi pengompilasi /win32res untuk menentukan file sumber daya Win32 Anda.

Atribut manifes rakitan

Anda dapat menggunakan atribut manifes rakitan untuk memberikan informasi dalam manifes rakitan, termasuk judul, deskripsi, alias default, dan konfigurasi. Tabel berikut menjelaskan atribut manifes rakitan.

Atribut manifes rakitan Deskripsi
AssemblyConfigurationAttribute Nilai string yang mengindikasikan konfigurasi rakitan, seperti Ritel atau Debug. Runtime tidak menggunakan nilai ini.
AssemblyDefaultAliasAttribute Nilai string yang menentukan alias default yang akan digunakan dengan mereferensikan rakitan. Nilai ini memberikan nama yang ramah ketika nama rakitan itu sendiri tidak ramah (seperti nilai GUID). Nilai ini juga dapat digunakan sebagai bentuk singkat dari nama rakitan lengkap.
AssemblyDescriptionAttribute Nilai string yang menentukan deskripsi singkat yang merangkum sifat dan tujuan rakitan.
AssemblyTitleAttribute Nilai string yang menentukan nama yang ramah untuk rakitan. Misalnya, rakitan bernama comdlg mungkin memiliki judul Kontrol Dialog Umum Microsoft.

Atribut nama yang kuat

Anda dapat menggunakan atribut nama yang kuat untuk menetapkan nama yang kuat untuk rakitan. Tabel berikut menjelaskan atribut nama yang kuat.

Atribut nama yang kuat Deskripsi
AssemblyDelaySignAttribute Nilai Boolean mengindikasikan bahwa penandatanganan tunda (delay signing) sedang digunakan.
AssemblyKeyFileAttribute Nilai string yang mengindikasikan nama file yang berisi kunci publik (jika menggunakan penandatanganan tunda) atau kunci publik dan privat diteruskan sebagai parameter ke konstruktor atribut ini. Perhatikan bahwa nama file relatif terhadap jalur file output (.exe atau .dll), bukan jalur file sumber.
AssemblyKeyNameAttribute Mengindikasikan kontainer kunci yang berisi pasangan kunci yang diteruskan sebagai parameter ke konstruktor atribut ini.

Contoh kode berikut menunjukkan atribut yang akan diterapkan saat menggunakan penandatanganan tunda untuk membuat rakitan bernama kuat dengan file kunci publik yang disebut myKey.snk.

[assembly:AssemblyKeyFileAttribute("myKey.snk")];
[assembly:AssemblyDelaySignAttribute(true)];
[assembly:AssemblyKeyFileAttribute("myKey.snk")]
[assembly:AssemblyDelaySignAttribute(true)]
<Assembly:AssemblyKeyFileAttribute("myKey.snk")>
<Assembly:AssemblyDelaySignAttribute(True)>

Lihat juga