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:
- C# - csharp_style_unused_value_expression_statement_preference
- Visual Basic - visual_basic_style_unused_value_expression_statement_preference
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.