Condividi tramite


SYSLIB1002: non includere parametri a livello di log come modelli nel messaggio di registrazione

Il primo argomento a livello di log a un metodo di registrazione viene fatto riferimento come modello nel messaggio di registrazione. Questo non è necessario, poiché il primo livello di log viene passato all'infrastruttura di registrazione in modo esplicito. Non è necessario ripetere il messaggio di log.

Soluzioni alternative

Rimuovere il modello che fa riferimento all'argomento a livello di log dal messaggio di registrazione.

Sopprimere avvisi

È consigliabile usare una delle soluzioni alternative quando possibile. Tuttavia, se non è possibile modificare il codice, è possibile eliminare l'avviso tramite una #pragma direttiva o un'impostazione <NoWarn> di progetto. Se la diagnostica del SYSLIB1XXX generatore di origine non viene visualizzata come errore, è possibile eliminare l'avviso nel codice o nel file di progetto.

Per eliminare gli avvisi nel codice (sostituire l'ID di diagnostica in base alle esigenze):

// Disable the warning.
#pragma warning disable SYSLIB1006

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

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

Per eliminare gli avvisi in un file di progetto (sostituire gli ID di diagnostica in base alle esigenze):

<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>