SYSLIB1008: A naplózási módszer egyik argumentumának implementálnia kell az interfészt ILogger

Egy LoggerMessageAttribute annotációval ellátott metódus egyik paraméterének a ILogger típusúnak, vagy olyan típusnak kell lennie, amely implementálja a ILogger interfészt.

Áthidaló megoldások

Győződjön meg arról, hogy az összes naplózási metódus paramétere ILogger típusú vagy olyan típusú, amely implementálja ILogger.

Figyelmeztetések mellőzése

Javasoljuk, hogy ha lehetséges, használja az egyik kerülő megoldást. Ha azonban nem tudja módosítani a kódot, egy irányelv vagy egy #pragma projektbeállítás segítségével letilthatja a figyelmeztetést <NoWarn> . Ha a SYSLIB1XXX forrásgenerátor diagnosztika nem hibaként jelenik meg, letilthatja a figyelmeztetést a kódban vagy a projektfájlban.

A kódban szereplő figyelmeztetések mellőzése (szükség esetén cserélje le a diagnosztikai azonosítót):

// Disable the warning.
#pragma warning disable SYSLIB1006

// Code that generates compiler diagnostic.
// ...

// Re-enable the warning.
#pragma warning restore SYSLIB1006

A projektfájlban lévő figyelmeztetések mellőzése (szükség esetén cserélje le a diagnosztikai azonosítókat):

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
   <TargetFramework>net10.0</TargetFramework>
   <!-- NoWarn below suppresses SYSLIB1002 project-wide -->
   <NoWarn>$(NoWarn);SYSLIB1002</NoWarn>
   <!-- To suppress multiple warnings, you can use multiple NoWarn elements -->
   <NoWarn>$(NoWarn);SYSLIB1002</NoWarn>
   <NoWarn>$(NoWarn);SYSLIB1006</NoWarn>
   <!-- Alternatively, you can suppress multiple warnings by using a semicolon-delimited list -->
   <NoWarn>$(NoWarn);SYSLIB1002;SYSLIB1006;SYSLIB1007</NoWarn>
  </PropertyGroup>
</Project>