Предпочтения для this и Me (IDE0003 и IDE0009)

В этой статье описаны два связанных правила и IDE0003 IDE0009.

Свойство Значение
Идентификатор правила IDE0003
Заголовок Удаление this или Me квалификация
Категория Стиль
Подкатегории Языковые правила ('this'' и 'Me.' квалификаторы)
Применимые языки C# и Visual Basic
Параметры dotnet_style_qualification_for_field
dotnet_style_qualification_for_property
dotnet_style_qualification_for_method
dotnet_style_qualification_for_event
Свойство Значение
Идентификатор правила IDE0009
Заголовок Добавление this или Me квалификация
Категория Стиль
Подкатегории Языковые правила ('this'' и 'Me.' квалификаторы)
Применимые языки C# и Visual Basic
Параметры dotnet_style_qualification_for_field
dotnet_style_qualification_for_property
dotnet_style_qualification_for_method
dotnet_style_qualification_for_event

Обзор

Эти два правила определяют, предпочитаете ли вы использовать эти квалификаторы (C#) и Me. (Visual Basic). Чтобы обеспечить наличие квалификаторов, задайте серьезность IDE0003 предупреждения или ошибки. Чтобы обеспечить наличие квалификаторов, задайте серьезность IDE0009 предупреждения или ошибки.

Например, если вы предпочитаете квалификаторы для полей и свойств, но не для методов или событий, можно включить IDE0009 и задать параметры dotnet_style_qualification_for_field и dotnet_style_qualification_for_property значение true. Однако эта конфигурация не будет помечать методы и события, имеющие this и Me квалификаторы. Чтобы также применить эти методы и события , не имеют квалификаторов, включите IDE0003.

Примечание.

Даже если в сборке включены правила стиля кода, это правило не включено. Он отображается только в редакторе Visual Studio.

Параметры

Связанные с этим правилом параметры определяют, к каким из следующих символов следует применять этот стиль:

Значение true параметра означает, что символ кода должен быть предучен в this. C# и Me. в Visual Basic. Значение false параметра означает, что элемент кода не должен быть предусловлен или this. Me..

Дополнительные сведения о настройке параметров см . в разделе "Формат параметров".

dotnet_style_qualification_for_field

Свойство Значение Описание
Имя параметра dotnet_style_qualification_for_field
Значения параметра true Предпочитать поля для предварительного представления в this. C# или Me. в Visual Basic
false Предпочитать поля не быть предусловленными this. или Me.
Значение параметра по умолчанию 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

Свойство Значение Описание
Имя параметра dotnet_style_qualification_for_property
Значения параметра true Предпочитаете, чтобы свойства были предисловными в this. C# или Me. в Visual Basic.
false Предпочитать свойства не быть предусловленными this. или Me..
Значение параметра по умолчанию 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

Свойство Значение Описание
Имя параметра dotnet_style_qualification_for_method
Значения параметра true Предпочитать методы, которые следует использовать в this. C# или Me. в Visual Basic.
false Предпочитать методы не быть предусловленными this. или Me..
Значение параметра по умолчанию 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

Свойство Значение Описание
Имя параметра dotnet_style_qualification_for_event
Значения параметра true Предпочитаете, чтобы события были предисловными в this. C# или Me. в Visual Basic.
false Предпочитать события не быть предусловленными this. или Me..
Значение параметра по умолчанию 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

Отключение предупреждений

Если вы хотите отключить только одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.

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

Чтобы отключить правило для файла, папки или проекта, задайте его серьезность none в файле конфигурации.

[*.{cs,vb}]
dotnet_diagnostic.IDE0003.severity = none
dotnet_diagnostic.IDE0009.severity = none

Чтобы отключить все правила стиля кода, задайте уровень серьезности для категории Style none в файле конфигурации.

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none

Дополнительные сведения см. в разделе Практическое руководство. Скрытие предупреждений анализа кода.

См. также