Sdílet prostřednictvím


SYSLIB1017: LogLevel Hodnota musí být zadána v atributu LoggerMessage nebo jako parametr metody protokolování.

Atribut LoggerMessageAttribute byl použit pro metodu bez LogLevel zadané hodnoty. Když to uděláte, musí být jeden argument metody protokolování tohoto typu, LogLevel aby hodnota skončila explicitně při volání metody protokolování.

Alternativní řešení

Buď zadejte LogLevel hodnotu v atributu LoggerMessage , nebo proveďte jeden z argumentů metody LogLevel protokolování hodnotu.

Potlačení upozornění

Pokud je to možné, doporučujeme použít jedno z alternativních řešení. Pokud ale kód nemůžete změnit, můžete upozornění potlačit direktivou #pragma<NoWarn> nebo nastavením projektu. Pokud se diagnostika generátoru SYSLIB1XXX zdroje nezobrazuje jako chyba, můžete potlačit upozornění v kódu nebo v souboru projektu.

Potlačení upozornění v kódu:

// Disable the warning.
#pragma warning disable SYSLIB1006

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

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

Potlačení upozornění v souboru projektu:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
   <TargetFramework>net6.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>