preferências this e Me (IDE0003 e IDE0009)
Este artigo descreve duas regras relacionadas, IDE0003
e IDE0009
.
Propriedade | Valor |
---|---|
ID da regra | IDE0003 |
Título | Remover this ou Me qualificar |
Categoria | Estilo |
Subcategoria | Regras da linguagem (qualificadores 'this.' e 'Me.') |
Linguagens aplicáveis | C# e Visual Basic |
Opções | dotnet_style_qualification_for_field |
dotnet_style_qualification_for_property |
|
dotnet_style_qualification_for_method |
|
dotnet_style_qualification_for_event |
Propriedade | Valor |
---|---|
ID da regra | IDE0009 |
Título | Adicionar this ou Me qualificar |
Categoria | Estilo |
Subcategoria | Regras da linguagem (qualificadores 'this.' e 'Me.') |
Linguagens aplicáveis | C# e Visual Basic |
Opções | dotnet_style_qualification_for_field |
dotnet_style_qualification_for_property |
|
dotnet_style_qualification_for_method |
|
dotnet_style_qualification_for_event |
Visão geral
Essas duas regras definem se você prefere ou não o uso dos qualificadores this (C#) e Me.
(Visual Basic). Para impor que os qualificadores não estejam presentes defina a severidade de IDE0003
como aviso ou erro. Para impor que os qualificadores estejam presentes defina a severidade de IDE0009
como aviso ou erro.
Por exemplo, se você preferir qualificadores para campos e propriedades, mas não para métodos ou eventos, poderá habilitar IDE0009
e definir as opções dotnet_style_qualification_for_field
e dotnet_style_qualification_for_property
para true
. No entanto, essa configuração não sinalizará os métodos e os eventos que tenham esses qualificadores this
e Me
. Para impor também que os métodos e eventos não tenham qualificadores, habilite IDE0003
.
Observação
Mesmo que você habilite regras de estilo de código no build, essa regra não será habilitada. Ele só aparece no editor do Visual Studio.
Opções
As opções associadas a esta regra definem a qual dos seguintes símbolos esta preferência de estilo deverá ser aplicada:
- Campos (dotnet_style_qualification_for_field)
- Propriedades (dotnet_style_qualification_for_property)
- Métodos (dotnet_style_qualification_for_method)
- Eventos (dotnet_style_qualification_for_event)
Um valor de opção de true
significa preferir que o símbolo de código seja precedido por this.
em C# e Me.
no Visual Basic. Um valor de opção de false
significa preferir que o elemento de código não seja precedido por this.
ou Me.
.
Para obter mais informações sobre como configurar as opções, consulte Formato da opção.
dotnet_style_qualification_for_field
Propriedade | Valor | Descrição |
---|---|---|
Nome da opção | dotnet_style_qualification_for_field | |
Valores da opção | true |
Preferir que os campos sejam precedidos por this. em C# ou Me. no Visual Basic |
false |
Preferir que os campos não sejam precedidos por this. ou Me. |
|
Valor da opção padrão | 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
Propriedade | Valor | Descrição |
---|---|---|
Nome da opção | dotnet_style_qualification_for_property | |
Valores da opção | true |
Preferir que as propriedades sejam precedidas por this. em C# ou Me. no Visual Basic. |
false |
Preferir que as propriedades não sejam precedidas por this. ou Me. . |
|
Valor da opção padrão | 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
Propriedade | Valor | Descrição |
---|---|---|
Nome da opção | dotnet_style_qualification_for_method | |
Valores da opção | true |
Preferir que os métodos sejam precedidos por this. em C# ou Me. no Visual Basic. |
false |
Preferir que os métodos não sejam precedidos por this. ou Me. . |
|
Valor da opção padrão | 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
Propriedade | Valor | Descrição |
---|---|---|
Nome da opção | dotnet_style_qualification_for_event | |
Valores da opção | true |
Preferir que os eventos sejam precedidos por this. em C# ou Me. no Visual Basic. |
false |
Preferir que os eventos não sejam precedidos por this. ou Me. . |
|
Valor da opção padrão | 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
Suprimir um aviso
Se você quiser suprimir apenas uma violação, adicione diretivas de pré-processador ao arquivo de origem para desabilitar e, em seguida, reabilite a regra.
#pragma warning disable IDE0003 // Or IDE0009
// The code that's violating the rule is on this line.
#pragma warning restore IDE0003 // Or IDE0009
Para desabilitar a regra em um arquivo, uma pasta ou um projeto, defina a severidade como none
no arquivo de configuração.
[*.{cs,vb}]
dotnet_diagnostic.IDE0003.severity = none
dotnet_diagnostic.IDE0009.severity = none
Para desabilitar todas as regras de estilo de código, defina a severidade da categoria Style
como none
no arquivo de configuração.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Para obter mais informações, confira Como suprimir avisos de análise de código.