コードのスタイル設定

適用対象:yesVisual Studio noVisual Studio for Mac noVisual Studio Code

EditorConfig ファイルを使用し、プロジェクト別にコード スタイル設定を定義できます。あるいは、テキスト エディターの [オプション] ページで、Visual Studio で編集するすべてのコードを対象にできます。 C# コードの場合、コードのクリーンアップ (Visual Studio 2019、Visual Studio 2022) コマンドとドキュメントのフォーマット (Visual Studio 2017) コマンドを使用し、これらのコード スタイル設定を適用するように Visual Studio を構成することもできます。

注意

このトピックは、Windows 上の Visual Studio に適用されます。 Visual Studio for Mac については、Visual Studio for Mac でのエディターの動作に関するページを参照してください。

EditorConfig ファイルのコード スタイル

.NET に対するコード スタイルの設定は、EditorConfig ファイルをプロジェクトに追加することで指定できます。 EditorConfig ファイルは、Visual Studio のパーソナル化アカウントではなく、コードベースに関連付けられます。 EditorConfig ファイル内の設定は、 [オプション] ダイアログ ボックスで指定されているコード スタイルよりも優先されます。 リポジトリまたはプロジェクトに対するすべての共同作成者にコーディング スタイルを適用する場合は、EditorConfig ファイルを使用します。

EditorConfig ファイルは手動で入力できます。または、Visual Studio の [オプション] ダイアログ ボックスで設定したコード スタイルの設定に基づいて、ファイルを自動的に生成できます。 このオプション ページは、[ツール]>[オプション]>[テキスト エディター]>[C#] または [Basic]>[コード スタイル]>[全般] の順に選択すると表示されます。 [Generate .editorconfig file from settings](設定から .editorconfig ファイルを生成する) をクリックすると、この [オプション] ページの設定に基づいてコーディング スタイルの .editorconfig ファイルが自動的に生成されます。

設定からの editorconfig ファイル生成のスクリーンショット。

EditorConfig ファイルは手動で入力できます。または、Visual Studio の [オプション] ダイアログ ボックスで設定したコード スタイルの設定に基づいて、ファイルを自動的に生成できます。 このオプション ページは、[ツール]>[オプション]>[テキスト エディター]>[C#] または [Visual Basic]>[コード スタイル]>[全般] の順に選択すると表示されます。 [Generate .editorconfig file from settings](設定から .editorconfig ファイルを生成する) をクリックすると、この [オプション] ページの設定に基づいてコーディング スタイルの .editorconfig ファイルが自動的に生成されます。

設定からの editorconfig ファイル生成のスクリーンショット。

[オプション] ダイアログ ボックスのコード スタイル

すべての C# プロジェクトと Visual Basic プロジェクトに対してコードのスタイルを設定するには、 [ツール] メニューから [オプション] ダイアログ ボックスを開きます。 [オプション] ダイアログ ボックスで、[テキスト エディター]> > [C#] または [Basic]>[コード スタイル]>[全般] の順に選択します。

すべての C# プロジェクトと Visual Basic プロジェクトに対してコードのスタイルを設定するには、 [ツール] メニューから [オプション] ダイアログ ボックスを開きます。 [オプション] ダイアログ ボックスで、[テキスト エディター]>[C#] または [Basic]>[コード スタイル]>[全般] の順に選択します。

選択すると、リスト内の各項目について優先順位のプレビューが表示されます。

コード スタイルのオプションのスクリーンショット。

コード スタイルのオプションのスクリーンショット。

このウィンドウで設定したオプションは、Visual Studio のパーソナル化アカウントに適用され、特定のプロジェクトまたはコードベースには関連付けられません。 さらに、継続的インテグレーション (CI) のビルドなど、ビルド時には適用されません。 コード スタイルのユーザー設定をプロジェクトに関連付けて、ビルド時にスタイルを適用する場合は、プロジェクトに関連付けられている .editorconfig ファイルでユーザー設定を指定します。

優先順位と重大度

各行のドロップダウンを使用して、このページのコード スタイル設定ごとに [優先順位][重大度レベル] の値を設定できます。 重大度は、 [リファクタリングのみ][提案][警告] 、または [エラー] に設定できます。 コード スタイルのクイック アクションを有効にする場合、 [重大度レベル] の設定は確実に [リファクタリングのみ] 以外に設定してください。 クイック アクションの電球 、エラーの電球 、またはねじ回し のアイコンは、優先されていないスタイルが使用されている場合に表示され、[クイック アクション] の一覧でオプションを選択して、優先されるスタイルに合わせてコードを自動的に再作成することができます。

ビルド時にコード スタイルを適用する

.NET 5.0 RC2 SDK が含まれている Visual Studio 2019 バージョン 16.8 以降、すべての .NET プロジェクトに対して、ビルド時、.NET のコーディング規則を適用できます。 ビルド時、.NET のスタイルに違反すると、"IDE" プレフィックスが付いた警告またはエラーが表示されます。 それにより、自分のコードベースで一貫性のあるコード スタイルを厳密に適用できます。

コード スタイルの適用

C# コード ファイルの場合、Visual Studio では、エディターの一番下に [コードのクリーンアップ] ボタンがあり (キーボード: Ctrl+KCtrl+E)、これで EditorConfig ファイルまたは [コード スタイル] オプション ページからのコード スタイルを適用します。 プロジェクトに .editorconfig ファイルが存在する場合、それが優先設定となります。

コード クリーンアップの実行のスクリーンショット。

ヒント

重大度がなしで構成されているルールは、コードのクリーンアップには関係しませんが、[クイック アクションとリファクタリング] メニューを使用して個別に適用できます。

まず、[コード クリーンアップの構成] ダイアログ ボックスで (2 つのプロファイルのいずれかで) 適用するコード スタイルを構成します。 このダイアログ ボックスを開くには、コードのクリーンアップのほうきアイコンの横にある展開用の矢印をクリックし、[コード クリーンアップの構成] を選択します。

コード クリーンアップの構成のスクリーンショット。

コードのクリーンアップを構成した後、ほうきアイコンをクリックするか、または Ctrl+K キー、Ctrl+E キーを順に押して、コードのクリーンアップを実行します。 プロジェクト全体またはソリューション全体に対して、コードのクリーンアップを実行することもできます。 ソリューション エクスプローラーでプロジェクトまたはソリューションの名前を右クリックし、[分析とコードのクリーンアップ] を選択して、[コードのクリーンアップの実行] を選択します。

プロジェクト全体またはソリューション全体に対するコード クリーンアップの実行のスクリーンショット。

C# コード ファイルの場合、Visual Studio では、エディターの一番下に [コードのクリーンアップ] ボタンがあり (キーボード: Ctrl+KCtrl+E)、これで EditorConfig ファイルまたは [コード スタイル] オプション ページからのコード スタイルを適用します。 プロジェクトに .editorconfig ファイルが存在する場合、それが優先設定となります。

コード クリーンアップの実行のスクリーンショット。

ヒント

重大度がなしで構成されているルールは、コードのクリーンアップには関係しませんが、[クイック アクションとリファクタリング] メニューを使用して個別に適用できます。

まず、[コード クリーンアップの構成] ダイアログ ボックスで (2 つのプロファイルのいずれかで) 適用するコード スタイルを構成します。 このダイアログ ボックスを開くには、コードのクリーンアップのほうきアイコンの横にある展開用の矢印をクリックし、[コード クリーンアップの構成] を選択します。

コード クリーンアップの構成のスクリーンショット。

コードのクリーンアップを構成した後、ほうきアイコンをクリックするか、または Ctrl+K キー、Ctrl+E キーを順に押して、コードのクリーンアップを実行します。 プロジェクト全体またはソリューション全体に対して、コードのクリーンアップを実行することもできます。 ソリューション エクスプローラーでプロジェクトまたはソリューションの名前を右クリックし、[分析とコードのクリーンアップ] を選択して、[コードのクリーンアップの実行] を選択します。

プロジェクト全体またはソリューション全体に対するコード クリーンアップの実行のスクリーンショット。

コード クリーンアップ設定

ほとんどのコード クリーンアップ設定は、.editorconfig でサポートされている 1 つ以上の .NET コード スタイルにマップされます。 設定の効果を示す例については、次の表のリンクを使用してください。

設定 ルール ID またはスタイル オプション
不要な Import または using の削除 IDE0005
ファイル ヘッダーの基本設定を適用する file_header_template
未使用の変数を削除する IDE0051
オブジェクト作成の基本設定を適用する visual_basic_style_prefer_simplified_object_creation
IsNot の基本設定を適用する visual_basic_style_prefer_isnot_expression
'this' または 'Me' 修飾子を追加する IDE0003-IDE0009
アクセシビリティ修飾子の追加 dotnet_style_require_accessibility_modifiers
修飾子を順序付けする IDE0036
フィールドを読み取り専用にする dotnet_style_readonly_field
不要なキャストを削除する IDE0004
オブジェクト/コレクションの初期化パラメーターの適用 dotnet_style_object_initializer
using ディレクティブの配置の基本設定を適用する csharp_using_directive_placement
かっこの基本設定を適用する IDE0047-IDE0048
未使用の値の基本設定を適用する IDE0058
言語/フレームワークの種類の初期設定の適用 IDE0049
未使用の抑制を削除する dotnet_remove_unnecessary_suppression_exclusions
ブール式の簡略化に関する基本設定を適用する dotnet_style_prefer_simplified_boolean_expressions
文字列補間の基本設定を適用する dotnet_style_prefer_simplified_interpolation
未使用のパラメーターの削除 dotnet_code_quality_unused_parameters
プロパティの基本設定を自動的に適用する dotnet_style_prefer_auto_properties
複合代入の基本設定を適用する dotnet_style_prefer_compound_assignment
coalesce 式の基本設定を適用する dotnet_style_coalesce_expression
条件式の基本設定を適用する dotnet_style_prefer_conditional_expression_over_assignment
dotnet_style_prefer_conditional_expression_over_return
タプル名の基本設定を適用する dotnet_style_explicit_tuple_names
dotnet_style_prefer_inferred_tuple_names
推定された匿名型のメンバー名の基本設定を適用する dotnet_style_prefer_inferred_anonymous_type_member_names
null チェックの基本設定を適用する dotnet_style_prefer_is_null_check_over_reference_equality_method
null 値の反映の基本設定を適用する dotnet_style_null_propagation
'var' の基本設定を適用する IDE0007-IDE0008
単一行のコントロール ステートメントに対する必須の波かっこを追加する csharp_prefer_braces
式/ブロック本体の初期設定の適用 式形式のメンバー
インラインの 'out' 変数の初期設定の適用 csharp_style_inlined_variable_declaration
パターン マッチングの基本設定を適用する パターン マッチングの基本設定
条件付き委任呼び出しの基本設定を適用する csharp_style_conditional_delegate_call
静的ローカル関数の基本設定を適用する csharp_prefer_static_local_function
分解の基本設定を適用する csharp_style_deconstructed_variable_declaration
default(T) の基本設定を適用する csharp_prefer_simple_default_expression
new() の基本設定を適用する csharp_style_implicit_object_creation_when_type_is_apparent
範囲の基本設定を適用する csharp_style_prefer_range_operator
匿名関数のローカルの基本設定を適用する csharp_style_pattern_local_over_anonymous_function
パラメーターの null 値の基本設定を適用する "Null" 検査設定
using ステートメントの基本設定を適用する csharp_prefer_simple_using_statement
throw 式の基本設定を適用する csharp_style_throw_expression

ファイルを保存するたびにコード スタイル設定を適用する場合、[オプション]>[テキスト エディター]>[コード クリーンアップ] の順に移動し、[保存時にコード クリーンアップ プロファイルを実行する] を選択します。

ファイルを保存するたびにコード スタイル設定を適用する場合、Code Cleanup on Save という拡張機能をお勧めします。

参照