Preferencias de this y Me (IDE0003 e IDE0009)

En este artículo se describen dos reglas relacionadas, IDE0003 y IDE0009.

Propiedad Valor
Identificador de la regla IDE0003
Título Eliminación de la calificación this o Me
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 Valor
Identificador de la regla IDE0009
Título Adición de la calificación this o Me
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.

Opciones

Las opciones asociadas de esta regla definen a cuál de los siguientes símbolos se debe aplicar esta preferencia de estilo:

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.

Consulte también