C# derleyicisi tarafından yorumlanan derleme düzeyi öznitelikleri

Özniteliklerin çoğu sınıflar veya yöntemler gibi belirli dil öğelerine uygulanır; ancak bazı öznitelikler geneldir; bütün bir derleme veya modül için geçerlidir. Örneğin, AssemblyVersionAttribute özniteliği sürüm bilgilerini bir derlemeye eklemek için kullanılabilir, örneğin:

[assembly: AssemblyVersion("1.0.0.0")]

Genel öznitelikler, herhangi bir üst düzey using yönergeden sonra ve herhangi bir tür, modül veya ad alanı bildiriminden önce kaynak kodunda görünür. Genel öznitelikler birden çok kaynak dosyada görünebilir, ancak dosyaların tek bir derleme geçişinde derlenmesi gerekir. Visual Studio, .NET Framework projelerindeki AssemblyInfo.cs dosyasına genel öznitelikler ekler. Bu öznitelikler .NET Core projelerine eklenmez.

Derleme öznitelikleri, bir derleme hakkında bilgi sağlayan değerlerdir. Bunlar aşağıdaki kategorilere ayrılır:

  • Derleme kimliği öznitelikleri
  • Bilgi öznitelikleri
  • Derleme bildirimi öznitelikleri

Derleme kimliği öznitelikleri

Bir derlemenin kimliğini üç öznitelik (varsa tanımlayıcı bir adla) belirler: ad, sürüm ve kültür. Bu öznitelikler derlemenin tam adını oluşturur ve kodda başvururken gereklidir. Öznitelikleri kullanarak derlemenin sürümünü ve kültürünü ayarlayabilirsiniz. Ancak, ad değeri derleyici, Derleme Bilgileri İletişim Kutusu'ndaki Visual Studio IDE veya derleme oluşturulduğunda Derleme Bağlayıcısı (Al.exe) tarafından ayarlanır. Derleme adı, derleme bildirimini temel alır. AssemblyFlagsAttribute özniteliği, derlemenin birden çok kopyasının birlikte bulunup bulunamayacağını belirtir.

Aşağıdaki tabloda kimlik öznitelikleri gösterilmektedir.

Öznitelik Purpose
AssemblyVersionAttribute Derlemenin sürümünü belirtir.
AssemblyCultureAttribute Derlemenin hangi kültürü desteklediğini belirtir.
AssemblyFlagsAttribute Tam zamanında (JIT) derleyici seçeneklerini, derlemenin yeniden güncelleştirilebilir olup olmadığını ve tam veya belirteçli bir ortak anahtara sahip olup olmadığını açıklayan bir derleme için bayrakların bit düzeyinde birleşimini belirtir.

Bilgi öznitelikleri

Bir derleme için daha fazla şirket veya ürün bilgisi sağlamak için bilgi özniteliklerini kullanırsınız. Aşağıdaki tabloda ad alanında tanımlanan bilgi öznitelikleri gösterilmektedir System.Reflection .

Öznitelik Purpose
AssemblyProductAttribute Derleme bildirimi için bir ürün adı belirtir.
AssemblyTrademarkAttribute Bir derleme bildiriminin ticari markasını belirtir.
AssemblyInformationalVersionAttribute Derleme bildirimi için bilgilendirme sürümünü belirtir.
AssemblyCompanyAttribute Derleme bildirimi için bir şirket adı belirtir.
AssemblyCopyrightAttribute Derleme bildirimi için telif hakkı belirten özel bir öznitelik tanımlar.
AssemblyFileVersionAttribute Win32 dosya sürümü kaynağı için belirli bir sürüm numarası ayarlar.
CLSCompliantAttribute Derlemenin Ortak Dil Belirtimi (CLS) ile uyumlu olup olmadığını gösterir.

Derleme bildirimi öznitelikleri

Derleme bildiriminde bilgi sağlamak için derleme bildirimi özniteliklerini kullanabilirsiniz. Öznitelikler başlık, açıklama, varsayılan diğer ad ve yapılandırmayı içerir. Aşağıdaki tabloda ad alanında tanımlanan derleme bildirimi öznitelikleri gösterilmektedir System.Reflection .

Öznitelik Purpose
AssemblyTitleAttribute Derleme bildirimi için bir derleme başlığı belirtir.
AssemblyDescriptionAttribute Derleme bildirimi için bir derleme açıklaması belirtir.
AssemblyConfigurationAttribute Derleme bildirimi için bir derleme yapılandırmasını (perakende veya hata ayıklama gibi) belirtir.
AssemblyDefaultAliasAttribute Derleme bildirimi için kolay bir varsayılan diğer ad tanımlar