Atrybuty na poziomie zestawu interpretowane przez kompilator języka C#
Większość atrybutów jest stosowana do określonych elementów języka, takich jak klasy lub metody; jednak niektóre atrybuty są globalne — mają zastosowanie do całego zestawu lub modułu. Na przykład atrybut może służyć do osadzania AssemblyVersionAttribute informacji o wersji w zestawie, w następujący sposób:
[assembly: AssemblyVersion("1.0.0.0")]
Atrybuty globalne są wyświetlane w kodzie źródłowym po wszelkich dyrektywach najwyższego poziomu using
i przed dowolnym typem, modułem lub deklaracjami przestrzeni nazw. Atrybuty globalne mogą być wyświetlane w wielu plikach źródłowych, ale pliki muszą zostać skompilowane w jednym przebiegu kompilacji. Program Visual Studio dodaje atrybuty globalne do pliku AssemblyInfo.cs w projektach programu .NET Framework. Te atrybuty nie są dodawane do projektów platformy .NET Core.
Atrybuty zestawu to wartości, które zawierają informacje o zestawie. Należą one do następujących kategorii:
- Atrybuty tożsamości zestawu
- Atrybuty informacyjne
- Atrybuty manifestu zestawu
Atrybuty tożsamości zestawu
Trzy atrybuty (o silnej nazwie, jeśli ma zastosowanie) określają tożsamość zestawu: nazwę, wersję i kulturę. Te atrybuty tworzą pełną nazwę zestawu i są wymagane podczas odwołowania się do niego w kodzie. Wersję i kulturę zestawu można ustawić przy użyciu atrybutów. Jednak wartość nazwy jest ustawiana przez kompilator, środowisko IDE programu Visual Studio w oknie dialogowym Informacje o zestawie lub konsolidator zestawu (Al.exe) podczas tworzenia zestawu. Nazwa zestawu jest oparta na manifeście zestawu. Atrybut AssemblyFlagsAttribute określa, czy wiele kopii zestawu może współistnieć.
W poniższej tabeli przedstawiono atrybuty tożsamości.
Atrybut | Purpose |
---|---|
AssemblyVersionAttribute | Określa wersję zestawu. |
AssemblyCultureAttribute | Określa kulturę obsługiwaną przez zestaw. |
AssemblyFlagsAttribute | Określa bitową kombinację flag dla zestawu, opisując opcje kompilatora just in time (JIT), niezależnie od tego, czy zestaw jest retargetable, i czy ma pełny lub tokenizowany klucz publiczny. |
Atrybuty informacyjne
Atrybuty informacyjne służą do dostarczania większej ilości informacji o firmie lub produkcie dla zestawu. W poniższej System.Reflection tabeli przedstawiono atrybuty informacyjne zdefiniowane w przestrzeni nazw.
Atrybut | Purpose |
---|---|
AssemblyProductAttribute | Określa nazwę produktu manifestu zestawu. |
AssemblyTrademarkAttribute | Określa znak towarowy manifestu zestawu. |
AssemblyInformationalVersionAttribute | Określa informacyjną wersję manifestu zestawu. |
AssemblyCompanyAttribute | Określa nazwę firmy dla manifestu zestawu. |
AssemblyCopyrightAttribute | Definiuje atrybut niestandardowy określający prawa autorskie do manifestu zestawu. |
AssemblyFileVersionAttribute | Ustawia określony numer wersji zasobu wersji pliku Win32. |
CLSCompliantAttribute | Wskazuje, czy zestaw jest zgodny ze specyfikacją języka wspólnego (CLS). |
Atrybuty manifestu zestawu
Atrybuty manifestu zestawu umożliwiają podanie informacji w manifeście zestawu. Atrybuty obejmują tytuł, opis, alias domyślny i konfigurację. W poniższej System.Reflection tabeli przedstawiono atrybuty manifestu zestawu zdefiniowane w przestrzeni nazw.
Atrybut | Purpose |
---|---|
AssemblyTitleAttribute | Określa tytuł zestawu dla manifestu zestawu. |
AssemblyDescriptionAttribute | Określa opis zestawu dla manifestu zestawu. |
AssemblyConfigurationAttribute | Określa konfigurację zestawu (na przykład sprzedaż detaliczną lub debugowanie) dla manifestu zestawu. |
AssemblyDefaultAliasAttribute | Definiuje przyjazny alias domyślny manifestu zestawu |