Preferencias de this y Me (IDE0003 e IDE0009)
En este artículo se describen dos reglas relacionadas, IDE0003
y IDE0009
.
Propiedad | Value |
---|---|
Identificador de la regla | IDE0003 |
Título | Quitar this o Me calificar |
Categoría | Estilo |
Subcategoría | Reglas de lenguaje (calificadores "this." y "Me.") |
Lenguajes aplicables | C# y Visual Basic |
Opciones | dotnet_style_qualification_for_field |
dotnet_style_qualification_for_property |
|
dotnet_style_qualification_for_method |
|
dotnet_style_qualification_for_event |
Propiedad | Value |
---|---|
Identificador de la regla | IDE0009 |
Título | Agregar this o Me calificar |
Categoría | Estilo |
Subcategoría | Reglas de lenguaje (calificadores "this." y "Me.") |
Lenguajes aplicables | C# y Visual Basic |
Opciones | dotnet_style_qualification_for_field |
dotnet_style_qualification_for_property |
|
dotnet_style_qualification_for_method |
|
dotnet_style_qualification_for_event |
Información general
Estas dos reglas definen si prefiere o no el uso de los calificadores this (C#) y Me.
(Visual Basic). Para exigir que los calificadores no estén presentes, establezca la gravedad de IDE0003
en advertencia o error. Para exigir que los calificadores estén presentes, establezca la gravedad de IDE0009
en advertencia o error.
Por ejemplo, si prefiere calificadores para campos y propiedades, pero no para métodos o eventos, puede habilitar IDE0009
y establecer las opciones dotnet_style_qualification_for_field
y dotnet_style_qualification_for_property
en true
. Sin embargo, esta configuración no marcaría los métodos y eventos que tienen calificadores this
y Me
. Para exigir también que los métodos y eventos no tengan calificadores, habilite IDE0003
.
Nota:
Incluso si habilita reglas de estilo de código en la compilación, esta regla no está habilitada. Solo se muestra en el editor de Visual Studio.
Opciones
Las opciones asociadas de esta regla definen a cuál de los siguientes símbolos se debe aplicar esta preferencia de estilo:
- Campos (dotnet_style_qualification_for_field)
- Propiedades (dotnet_style_qualification_for_property)
- Métodos (dotnet_style_qualification_for_method)
- Eventos (dotnet_style_qualification_for_event)
Un valor true
de la opción significa que se prefiere que el símbolo de código esté precedido por this.
en C# y Me.
en Visual Basic. Un valor false
de la opción significa que se prefiere que el elemento de código no esté precedido por this.
o Me.
.
Para más información sobre la configuración de las opciones, consulte Formato de opción.
dotnet_style_qualification_for_field
Propiedad | Valor | Descripción |
---|---|---|
Nombre de la opción | dotnet_style_qualification_for_field | |
Valores de opción | true |
Se prefiere que los campos estén precedidos por this. en C# o Me. en Visual Basic. |
false |
Se prefiere que los campos no estén precedidos por this. o Me. . |
|
Valor de opción predeterminado | false |
// dotnet_style_qualification_for_field = true
this.capacity = 0;
// dotnet_style_qualification_for_field = false
capacity = 0;
' dotnet_style_qualification_for_field = true
Me.capacity = 0
' dotnet_style_qualification_for_field = false
capacity = 0
dotnet_style_qualification_for_property
Propiedad | Valor | Descripción |
---|---|---|
Nombre de la opción | dotnet_style_qualification_for_property | |
Valores de opción | true |
Se prefiere que las propiedades estén precedidas por this. en C# o Me. en Visual Basic. |
false |
Se prefiere que las propiedades no estén precedidas por this. o Me. . |
|
Valor de opción predeterminado | false |
// dotnet_style_qualification_for_property = true
this.ID = 0;
// dotnet_style_qualification_for_property = false
ID = 0;
' dotnet_style_qualification_for_property = true
Me.ID = 0
' dotnet_style_qualification_for_property = false
ID = 0
dotnet_style_qualification_for_method
Propiedad | Valor | Descripción |
---|---|---|
Nombre de la opción | dotnet_style_qualification_for_method | |
Valores de opción | true |
Se prefiere que los métodos estén precedidos por this. en C# o Me. en Visual Basic. |
false |
Se prefiere que los métodos no estén precedidos por this. o Me. . |
|
Valor de opción predeterminado | false |
// dotnet_style_qualification_for_method = true
this.Display();
// dotnet_style_qualification_for_method = false
Display();
' dotnet_style_qualification_for_method = true
Me.Display()
' dotnet_style_qualification_for_method = false
Display()
dotnet_style_qualification_for_event
Propiedad | Valor | Descripción |
---|---|---|
Nombre de la opción | dotnet_style_qualification_for_event | |
Valores de opción | true |
Se prefiere que los eventos estén precedidos por this. en C# o Me. en Visual Basic. |
false |
Se prefiere que los eventos no estén precedidos por this. o Me. . |
|
Valor de opción predeterminado | false |
// dotnet_style_qualification_for_event = true
this.Elapsed += Handler;
// dotnet_style_qualification_for_event = false
Elapsed += Handler;
' dotnet_style_qualification_for_event = true
AddHandler Me.Elapsed, AddressOf Handler
' dotnet_style_qualification_for_event = false
AddHandler Elapsed, AddressOf Handler
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 IDE0003 // Or IDE0009
// The code that's violating the rule is on this line.
#pragma warning restore IDE0003 // Or IDE0009
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.IDE0003.severity = none
dotnet_diagnostic.IDE0009.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.