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 9 | 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
Högerklicka på projektet i Solution Explorer och välj sedan Egenskaper.
Välj fliken Paket .
Kommentar
Om projektet är ett .NET Framework-projekt väljer du fliken Program och väljer sedan Sammansättningsinformation.
Välj språket i listrutan Neutralt språk eller Sammansättningsneutralt språk .
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.