Compartir a través de


Quitar el valor de expresión innecesario (IDE0058)

Propiedad Valor
Identificador de la regla IDE0058
Título Quitar el valor de expresión innecesario
Categoría Estilo
Subcategoría Reglas de lenguaje (preferencias de nivel de expresión)
idiomas aplicables C# y Visual Basic
Opciones csharp_style_unused_value_expression_statement_preference
visual_basic_style_unused_value_expression_statement_preference

Visión general

Esta regla marca los valores de expresión sin usar. Por ejemplo:

void M()
{
  Compute(); // IDE0058: computed value is never used.
}

int Compute();

Puede realizar una de las siguientes acciones para corregir esta infracción:

  • Si la expresión no tiene efectos secundarios, quite toda la instrucción. Esto mejora el rendimiento evitando el cálculo innecesario.

  • Si la expresión tiene efectos secundarios, reemplace el lado izquierdo de la asignación con un discard (solo C#) o una variable local que nunca se utilice. Esto mejora la claridad del código mostrando explícitamente la intención de descartar un valor sin usar.

    _ = Compute();
    

Opciones

Las opciones de esta opción especifican si se prefiere el uso de una variable local descartada o una variable local sin usar:

Para obtener información sobre cómo configurar opciones, vea Formato de opción.

csharp_style_unused_value_expression_statement_preference

Propiedad Valor Descripción
nombre de opción csharp_style_unused_value_expression_statement_preference
idiomas aplicables C#
Valores de opción discard_variable Se prefiere asignar una expresión no usada a un descarte
unused_local_variable Se prefiere asignar una expresión no utilizada a una variable local que nunca se usa
valor de opción predeterminado discard_variable
// Original code:
System.Convert.ToInt32("35");

// After code fix for IDE0058:

// csharp_style_unused_value_expression_statement_preference = discard_variable
_ = System.Convert.ToInt32("35");

// csharp_style_unused_value_expression_statement_preference = unused_local_variable
var unused = Convert.ToInt32("35");

visual_basic_style_unused_value_expression_statement_preference

Propiedad Valor Descripción
nombre de opción visual_basic_style_unused_value_expression_statement_preference
idiomas aplicables Visual Basic
Valores de opción unused_local_variable Se prefiere asignar una expresión no utilizada a una variable local que nunca se usa
valor de opción predeterminado unused_local_variable
' visual_basic_style_unused_value_expression_statement_preference = unused_local_variable
Dim unused = Computation()

Suprimir 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 IDE0058
// The code that's violating the rule is on this line.
#pragma warning restore IDE0058

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

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

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

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

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

Consulte también