CA1824: Assemblies markeren met NeutralResourcesLanguageAttribute

Eigenschap Waarde
Regel-id CA1824
Titel Markeer assemblies met NeutralResourcesLanguageAttribute
Categorie Prestaties
Fix kan brekend of niet-brekend zijn Niet-brekend
Standaard ingeschakeld in .NET 10 Als suggestie
Toepasselijke talen C# en Visual Basic

Oorzaak

Een assembly bevat een ResX-gebaseerde resource, maar er is geen System.Resources.NeutralResourcesLanguageAttribute op toegepast.

Beschrijving van regel

Het NeutralResourcesLanguageAttribute kenmerk informeert de resourcemanager over de standaardcultuur van een app. Als de resources van de standaardcultuur zijn ingesloten in de hoofdassembly van de app en ResourceManager resources moet ophalen die deel uitmaken van dezelfde cultuur als de standaardcultuur, worden de ResourceManager resources die zich in de hoofdassembly bevinden, automatisch gebruikt in plaats van te zoeken naar een satellietassembly. Hierdoor wordt de gebruikelijke assemblageprobe overgeslagen, worden de opzoekprestaties voor de eerste resource die u laadt verbeterd, en kunt u uw werkset verminderen.

Tip

Zie Resources verpakken en implementeren voor het proces dat ResourceManager wordt gebruikt om resourcebestanden te testen.

Schendingen verhelpen

Als u een schending van deze regel wilt oplossen, voegt u het attribuut toe aan de assembly en specificeert u de taal van de resources voor de neutrale cultuur.

De neutrale taal voor resources opgeven

  1. Klik met de rechtermuisknop op uw project in Solution Explorer en selecteer Eigenschappen.

  2. Selecteer het tabblad Pakket .

    Notitie

    Als uw project een .NET Framework-project is, selecteert u het tabblad Toepassing en selecteert u assemblygegevens.

  3. Selecteer de taal uit de vervolgkeuzelijst Neutrale taal of Assembly-neutrale taal.

  4. Selecteer OK.

Wanneer waarschuwingen onderdrukken

Het is toegestaan om een waarschuwing van deze regel te onderdrukken. Opstartprestaties kunnen echter afnemen. Als u deze waarschuwing wilt onderdrukken, voegt u dit toe aan uw dotnet_diagnostic.CA1824.severity = none- of .editorconfig-bestand.

Een waarschuwing onderdrukken

Als u slechts één schending wilt onderdrukken, voegt u preprocessorrichtlijnen toe aan uw bronbestand om de regel uit te schakelen en vervolgens opnieuw in te schakelen.

#pragma warning disable CA1824
// The code that's violating the rule is on this line.
#pragma warning restore CA1824

Als u de regel voor een bestand, map of project wilt uitschakelen, stelt u de ernst none ervan in op het configuratiebestand.

[*.{cs,vb}]
dotnet_diagnostic.CA1824.severity = none

Zie voor meer informatie Hoe codeanalysewaarschuwingen te onderdrukken.

Zie ook