Share via


CA1824: Markera sammansättningar med NeutralResourcesLanguageAttribute

Property Värde
Regel-ID CA1824
Title Markera sammansättningar med NeutralResourcesLanguageAttribute
Kategori Prestanda
Korrigeringen är icke-bakåtkompatibel Icke-icke-bryta
Aktiverad som standard i .NET 8 Som förslag

Orsak

En sammansättning innehåller en ResX-baserad resurs men har inte tillämpats på den System.Resources.NeutralResourcesLanguageAttribute .

Regelbeskrivning

Attributet NeutralResourcesLanguageAttribute informerar resurshanteraren om en apps standardkultur. Om standardkulturens resurser är inbäddade i appens huvudsammansättning och ResourceManager måste hämta resurser som tillhör samma kultur som standardkulturen, ResourceManager använder automatiskt resurserna som finns i huvudsammansättningen i stället för att söka efter en satellitsammansättning. Detta kringgår den vanliga sammansättningsavsökningen, förbättrar uppslagsprestandan för den första resursen du läser in och kan minska din arbetsuppsättning.

Dricks

Se Paketera och distribuera resurser för den process som ResourceManager används för att söka efter resursfiler.

Åtgärda överträdelser

Om du vill åtgärda ett brott mot den här regeln lägger du till attributet i sammansättningen och anger språket för resurserna i den neutrala kulturen.

Ange neutralt språk för resurser

  1. Högerklicka på projektet i Solution Explorer och välj sedan Egenskaper.

  2. Välj fliken Paket .

    Kommentar

    Om projektet är ett .NET Framework-projekt väljer du fliken Program och väljer sedan Sammansättningsinformation.

  3. Välj språket i listrutan Neutralt språk eller Sammansättningsneutralt språk .

  4. Välj OK.

När du ska ignorera varningar

Det är tillåtet att utelämna en varning från den här regeln. Startprestanda kan dock försämras. Om du vill ignorera den här varningen lägger du till dotnet_diagnostic.CA1824.severity = none i .globalconfig - eller .editorconfig-filen .

Ignorera en varning

Om du bara vill förhindra en enda överträdelse lägger du till förprocessordirektiv i källfilen för att inaktivera och aktiverar sedan regeln igen.

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

Om du vill inaktivera regeln för en fil, mapp eller ett projekt anger du dess allvarlighetsgrad till none i konfigurationsfilen.

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

Mer information finns i Så här utelämnar du kodanalysvarningar.

Se även