Assemblykenmerken instellen in code

Assemblykenmerken zijn waarden die informatie geven over een assembly. Ze worden meestal ingesteld in een AssemblyInfo.cs-bestand . De kenmerken zijn onderverdeeld in de volgende gegevenssets:

  • Assembly-identiteitskenmerken
  • Informatieve kenmerken
  • Assemblymanifestkenmerken
  • Sterke naamkenmerken

Dit artikel is bedoeld voor het toevoegen van assemblykenmerken uit code. Zie Assembly-kenmerken instellen in een projectbestand voor informatie over het toevoegen van assemblykenmerken aan projecten (niet in code).

Assembly-identiteitskenmerken

Drie kenmerken, samen met een sterke naam (indien van toepassing), bepalen de identiteit van een assembly: naam, versie en cultuur. Deze kenmerken vormen de volledige naam van de assembly en zijn vereist bij het verwijzen naar de assembly in code. U kunt kenmerken gebruiken om de versie en cultuur van een assembly in te stellen. De compiler of assembly linker (Al.exe) stelt de naamwaarde in wanneer de assembly wordt gemaakt, op basis van het bestand dat het assemblymanifest bevat.

In de volgende tabel worden de versie- en cultuurkenmerken beschreven.

Kenmerk Assembly-identiteit Beschrijving
AssemblyCultureAttribute Geïnventariseerd veld dat de cultuur aangeeft die door de assembly wordt ondersteund. Een assembly kan ook de onafhankelijkheid van de cultuur opgeven, wat aangeeft dat deze de resources voor de standaardcultuur bevat. Opmerking: De runtime behandelt alle assembly's waarvoor het cultuurkenmerk niet is ingesteld op null als een satellietassembly. Dergelijke assembly's zijn onderworpen aan bindingsregels voor satellietassembly's. Zie Hoe de runtime assembly's zoekt voor meer informatie.
AssemblyFlagsAttribute Waarde waarmee assemblykenmerken worden ingesteld, bijvoorbeeld of de assembly naast elkaar kan worden uitgevoerd.
AssemblyVersionAttribute Numerieke waarde in de primaire notatie.minor.build.revisie (bijvoorbeeld 2.4.0.0). De algemene taalruntime gebruikt deze waarde om bindingsbewerkingen uit te voeren in sterk benoemde assembly's. Opmerking: Als het AssemblyInformationalVersionAttribute kenmerk niet wordt toegepast op een assembly, wordt het versienummer dat is opgegeven door het AssemblyVersionAttribute kenmerk gebruikt door de Application.ProductVersion, Application.UserAppDataPathen Application.UserAppDataRegistry eigenschappen.

In het volgende codevoorbeeld ziet u hoe u de versie- en cultuurkenmerken toepast op een assembly.

// 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")>

Informatieve kenmerken

U kunt informatieve kenmerken gebruiken om aanvullende bedrijfs- of productgegevens voor een assembly op te geven. In de volgende tabel worden de informatieve kenmerken beschreven die u op een assembly kunt toepassen.

Informatiekenmerk Beschrijving
AssemblyCompanyAttribute Tekenreekswaarde die een bedrijfsnaam opgeeft.
AssemblyCopyrightAttribute Tekenreekswaarde die copyrightgegevens opgeeft.
AssemblyFileVersionAttribute Tekenreekswaarde die het versienummer van het Win32-bestand opgeeft. Dit wordt normaal gesproken standaard ingesteld op de assemblyversie.
AssemblyInformationalVersionAttribute Tekenreekswaarde die versie-informatie opgeeft die niet wordt gebruikt door de algemene taalruntime, zoals een volledig productversienummer. Opmerking: Als dit kenmerk wordt toegepast op een assembly, kan de tekenreeks die wordt opgegeven tijdens runtime worden verkregen met behulp van de Application.ProductVersion eigenschap. De tekenreeks wordt ook gebruikt in het pad en de registersleutel die wordt geleverd door de Application.UserAppDataPath en Application.UserAppDataRegistry eigenschappen.
AssemblyProductAttribute Tekenreekswaarde die productgegevens opgeeft.
AssemblyTrademarkAttribute Tekenreekswaarde die handelsmerkgegevens opgeeft.

Deze kenmerken kunnen worden weergegeven op de pagina Windows-eigenschappen van de assembly of ze kunnen worden overschreven met behulp van de optie /win32res compiler om uw Win32-resourcebestand op te geven.

Assemblymanifestkenmerken

U kunt assemblymanifestkenmerken gebruiken om informatie op te geven in het assemblymanifest, inclusief titel, beschrijving, de standaardalias en configuratie. In de volgende tabel worden de kenmerken van het assemblymanifest beschreven.

Kenmerk Assembly-manifest Beschrijving
AssemblyConfigurationAttribute Tekenreekswaarde die de configuratie van de assembly aangeeft, zoals Retail of Debug. De runtime gebruikt deze waarde niet.
AssemblyDefaultAliasAttribute Tekenreekswaarde die een standaardalias opgeeft die moet worden gebruikt door te verwijzen naar assembly's. Deze waarde biedt een beschrijvende naam wanneer de naam van de assembly zelf niet vriendelijk is (zoals een GUID-waarde). Deze waarde kan ook worden gebruikt als een korte vorm van de volledige assemblynaam.
AssemblyDescriptionAttribute Tekenreekswaarde die een korte beschrijving aangeeft waarin de aard en het doel van de assembly worden samengevat.
AssemblyTitleAttribute Tekenreekswaarde die een beschrijvende naam voor de assembly opgeeft. Een assembly met de naam comdlg kan bijvoorbeeld de titel Microsoft Common Dialog Control hebben.

Sterke naamkenmerken

U kunt sterke naamkenmerken gebruiken om een sterke naam in te stellen voor een assembly. In de volgende tabel worden de sterke naamkenmerken beschreven.

Sterk naamkenmerk Beschrijving
AssemblyDelaySignAttribute Booleaanse waarde die aangeeft dat vertragingsondertekening wordt gebruikt.
AssemblyKeyFileAttribute Tekenreekswaarde die de naam aangeeft van het bestand dat de openbare sleutel bevat (als u vertragingsondertekening gebruikt) of zowel de openbare als de persoonlijke sleutels die als parameter zijn doorgegeven aan de constructor van dit kenmerk. Houd er rekening mee dat de bestandsnaam relatief is ten opzichte van het pad naar het uitvoerbestand (de .exe of .dll), niet het pad naar het bronbestand.
AssemblyKeyNameAttribute Geeft de sleutelcontainer aan die het sleutelpaar bevat dat als parameter is doorgegeven aan de constructor van dit kenmerk.

In het volgende codevoorbeeld ziet u de kenmerken die moeten worden toegepast bij het gebruik van vertraging bij het maken van een sterk benoemde assembly met een openbare-sleutelbestand met de naam myKey.snk.

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

Zie ook