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:
- Built-in types (csharp_style_var_for_built_in_types)
- Lugares donde el tipo es aparente (csharp_style_var_when_type_is_apparent)
- Elsewhere (csharp_style_var_elsewhere)
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.