Condividi tramite


Rimuovere il modificatore non necessario unsafe (IDE0380)

Proprietà Value
ID della regola IDE0380
Titolo Rimuovere il modificatore non necessario unsafe
Categoria Style
Sottocategoria Regole di codice non necessarie (preferenze del modificatore)
Linguaggi applicabili C#
Opzioni None

Informazioni generali

Questa regola identifica blocchi di codice, metodi, tipi o altre dichiarazioni contrassegnate con il unsafe modificatore che in realtà non contengono operazioni non sicure. Il unsafe modificatore consente l'uso di puntatori e altre funzionalità di codice non sicure, ma quando tali funzionalità non vengono usate, il modificatore non è necessario e deve essere rimosso per maggiore chiarezza del codice.

Example

// Code with violations.

// Unnecessary, no unsafe operations.
unsafe class MyClass
{
    public void Method()
    {
        var x = 5;
    }
}

// Unnecessary, no unsafe operations.
unsafe void ProcessData(int value)
{
    Console.WriteLine(value);
}

// Fixed code.
class MyClass
{
    public void Method()
    {
        var x = 5;
    }
}

void ProcessData(int value)
{
    Console.WriteLine(value);
}

// Example where 'unsafe' is needed.
unsafe class ValidUsage
{
    int* pointer; // Pointer type requires 'unsafe'.
}

Eliminare un avviso

Se si desidera eliminare solo una singola violazione, aggiungere direttive del preprocessore al file di origine per disabilitare e quindi riabilitare la regola.

#pragma warning disable IDE0380
// The code that's violating the rule is on this line.
#pragma warning restore IDE0380

Per disabilitare la regola per un file, una cartella o un progetto, impostarne la gravità su none nel file di configurazione .

[*.{cs,vb}]
dotnet_diagnostic.IDE0380.severity = none

Per disabilitare tutte le regole in stile codice, impostare la gravità per la categoria Style su none nel file di configurazione.

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none

Per altre informazioni, vedere Come eliminare gli avvisi di analisi del codice.

Vedere anche