Preferencias de "var" (IDE0007 e IDE0008)

En este artículo se describen dos reglas relacionadas, IDE0007 e IDE0008.

Propiedad Valor
Identificador de la regla IDE0007
Título Uso de var en lugar del tipo explícito
Categoría Estilo
Subcategoría Reglas de idioma (preferencias "var")
Lenguajes aplicables C#
Opciones csharp_style_var_for_built_in_types
csharp_style_var_when_type_is_apparent
csharp_style_var_elsewhere
Propiedad Valor
Identificador de la regla IDE0008
Título Uso de un tipo explícito en lugar de var
Categoría Estilo
Subcategoría Reglas de idioma (preferencias "var")
Lenguajes aplicables C#
Opciones csharp_style_var_for_built_in_types
csharp_style_var_when_type_is_apparent
csharp_style_var_elsewhere

Información general

Estas dos reglas de estilo definen si la palabra clave var o un tipo explícito se deben usar en una declaración de variable. Para exigir que se use var, establezca la gravedad de IDE0007 en advertencia o error. Para exigir que se use el tipo explícito, establezca la gravedad de IDE0008 en advertencia o error.

Opciones

Las opciones asociadas de esta regla definen dónde se debe aplicar esta preferencia de estilo:

Para obtener más información sobre la configuración de las opciones, vea Formato de opción.

csharp_style_var_for_built_in_types

Propiedad Valor Descripción
Nombre de la opción csharp_style_var_for_built_in_types
Valores de opción true Se prefiere usar var para declarar variables con tipos de sistema integrados como int
false Se prefiere el tipo explícito sobre var para declarar variables con tipos de sistema integrados como int
Valor de opción predeterminado false
// csharp_style_var_for_built_in_types = true
var x = 5;

// csharp_style_var_for_built_in_types = false
int x = 5;

csharp_style_var_when_type_is_apparent

Propiedad Valor Descripción
Nombre de la opción csharp_style_var_when_type_is_apparent
Valores de opción true Se prefiere var cuando el tipo ya se ha mencionado en el lateral derecho de una expresión de declaración
false Se prefiere el tipo explícito cuando el tipo ya se ha mencionado en el lateral derecho de una expresión de declaración
Valor de opción predeterminado false
// csharp_style_var_when_type_is_apparent = true
var obj = new Customer();

// csharp_style_var_when_type_is_apparent = false
Customer obj = new Customer();

csharp_style_var_elsewhere

Propiedad Valor Descripción
Nombre de la opción csharp_style_var_elsewhere
Valores de opción true Se prefiere var a un tipo explícito en todos los casos, a menos que se reemplace por otra regla de estilo de código
false Se prefiere el tipo explícito en vez de var en todos los casos, a no ser que otra regla de estilo de código lo reemplace
Valor de opción predeterminado false
// csharp_style_var_elsewhere = true
var f = this.Init();

// csharp_style_var_elsewhere = false
bool f = this.Init();

Supresión de una advertencia

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

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

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

[*.{cs,vb}]
dotnet_diagnostic.IDE0007.severity = none
dotnet_diagnostic.IDE0008.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, consulte Procedimiento para suprimir advertencias de análisis de código.

Consulte también