Quitar modificador innecesario unsafe (IDE0380)

Propiedad Importancia
Identificador de la regla IDE0380
Título Quitar modificador innecesario unsafe
Categoría Style
Subcategoría Reglas de código innecesarias (preferencias del modificador)
Idiomas aplicables C#
Opciones Ninguno

Información general

Esta regla identifica bloques de código, métodos, tipos u otras declaraciones marcadas con el unsafe modificador que realmente no contienen ninguna operación no segura. El unsafe modificador permite el uso de punteros y otras características de código no seguras, pero cuando esas características no se usan, el modificador no es necesario y debe quitarse para mayor claridad del código.

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'.
}

Supresión de una advertencia

Si desea suprimir solo una infracción, agregue directivas de preprocesador al archivo de origen para deshabilitar y volver a habilitar la regla.

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

Para deshabilitar la regla de un archivo, una carpeta o un proyecto, establezca su gravedad a none en el archivo de configuración.

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

Para deshabilitar todas las reglas de estilo de código, establezca la gravedad de la categoría Style a none en el archivo de configuración.

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

Para obtener más información, consulte Cómo suprimir advertencias de análisis de código.

Consulte también