Share via


CA1848: Använd LoggerMessage-ombuden

Property Värde
Regel-ID CA1848
Rubrik Använda LoggerMessage-ombuden
Kategori Prestanda
Korrigeringen är icke-bakåtkompatibel Icke-icke-bryta
Aktiverad som standard i .NET 8 Nej

Orsak

Användning av inloggningstilläggsmetoder, till exempel LogInformation och LogDebug.

Regelbeskrivning

Använd mönstret för LoggerMessage loggning med höga prestanda.

Så här åtgärdar du överträdelser

Använd LoggerMessage för att åtgärda överträdelser av den här regeln.

LoggerMessage ger följande prestandafördelar jämfört med Inloggningstilläggsmetoder:

  • Inloggningstilläggsmetoder kräver "boxning" (konvertera) värdetyper, till exempel int, till object. Mönstret LoggerMessage undviker boxning med hjälp av statiska Action fält och tilläggsmetoder med starkt skrivna parametrar.
  • Inloggningstilläggsmetoder måste parsa meddelandemallen (namngiven formatsträng) varje gång ett loggmeddelande skrivs. LoggerMessage kräver bara parsning av en mall en gång när meddelandet har definierats.

När du ska ignorera varningar

Ignorera inte en varning från den här regeln.

Se även