この記事では、IDE0003 と IDE0009 という 2 つの関連するルールについて説明します。
| プロパティ | 値 |
|---|---|
| ルール ID | IDE0003 |
| タイトル | 名前は簡略化できます |
| カテゴリ | スタイル |
| サブカテゴリー | 言語ルール ('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 |
| プロパティ | 値 |
|---|---|
| ルール ID | IDE0009 |
| タイトル | メンバー アクセスには資格が必要です |
| カテゴリ | スタイル |
| サブカテゴリー | 言語ルール(「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 |
概要
これら 2 つの規則によって、this (C#) 修飾子と Me. (Visual Basic) 修飾子の使用を優先するかどうかを定義します。 修飾子が存在していないことを強制するには、IDE0009
たとえば、フィールドとプロパティの修飾子は使用するが、メソッドやイベントの修飾子は使用しない場合は、IDE0009 を有効にして、オプション dotnet_style_qualification_for_field と dotnet_style_qualification_for_property を true に設定できます。 ただし、この構成では、 修飾子と this 修飾子があるメソッドとイベントに対してMeフラグが設定されません。 メソッドとイベントにも修飾子が "ない" ことを強制するには、 を有効にします。IDE0003
注
ビルド時にコード スタイル ルールを有効にした場合でも、この規則は有効になりません。 IDE 内にのみ表示されます。
オプション
この規則に関連付けられているオプションによって、このスタイル設定を、次のシンボルのどれに適用する必要があるかを定義します。
- フィールド (dotnet_style_qualification_for_field)
- プロパティ (dotnet_style_qualification_for_property)
- メソッド (dotnet_style_qualification_for_method)
- イベント (dotnet_style_qualification_for_event)
true のオプション値は、C# では this.、Visual Basic では Me. をコード記号の前に付けることを意味します。
false のオプション値は、がthis.やMe.をコード要素の前に付けないことを意味します。
オプションの構成の詳細については、「オプションの書式」を参照してください。
dotnet_style_qualification_for_field
| プロパティ | 値 | 説明 |
|---|---|---|
| オプション名 | dotnet_style_qualification_for_field | |
| オプションの値 | true |
C# では this.、Visual Basic では Me. をフィールドの前に付けます |
false |
フィールドの前に |
|
| 既定のオプションの値 | 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 |
C# では this.、Visual Basic では Me. をプロパティの前に付けます。 |
false |
プロパティの前にやthis.をつけないことが推奨されます。 |
|
| 既定のオプションの値 | 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 |
C# では this.、Visual Basic では Me. をメソッドの前に付けます。 |
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 |
C# では this.、Visual Basic では Me. をイベントの前に付けます。 |
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
詳細については、「コード分析の警告を抑制する方法」を参照してください。
こちらもご覧ください
.NET