ReSharper 2021.1 ヘルプ

コードの構文スタイル: 複数の属性

複数の C# の属性(英語)は、異なる方法で記述することができます。同じ正方形の角括弧セクション内の複数の属性を結合するか、または異なる属性に対して複数のセクションを使用できます。ReSharper では、複数の属性のスタイルを指定し、このスタイルを目的の範囲に適用することができます。

ReSharper は、属性の複数のフォーマットルールも提供します。これらのルールを表示および構成するには、ReSharper オプション(ReSharper | オプション)を開き、検索ボックスに attribute と入力し、コード編集 | C# | スタイルのフォーマットのページで一致したアイテムを確認します。

ReSharper を使用すると、既存のコードに属性スタイルを適用したり、コード補完とコード生成機能を使用して新しいコードを生成したり、コードテンプレートを適用したり、リファクタリングを実行したりするときに設定を考慮できます。

属性にスタイル設定を適用する

デフォルトでは、複数の属性が設定に準拠しているかどうかがチェックされ、準拠していない場合、ReSharper はそのような宣言をハイライトし、対応するクイックフィックスまたはスコープ内の修正を提案します

好みは、属性が別々のセクションにあるべきだと言うかもしれません:

Multiple attributes quick-fix

... または単一のセクションに:

Multiple attributes quick-fix

バルクモードで複数の属性の設定を強制する別のオプションは、コードのクリーンアップです。組み込みプロファイルフルクリーンアップまたは再フォーマットして構文スタイルを適用のいずれかを使用してコードクリーンアップ実行するか、以下で説明するように、特定のタスクのみを対象としたカスタムプロファイルを作成して実行できます。

カスタムコードクリーンアッププロファイルで属性スタイルを適用する

  1. メインメニューから ReSharper | オプションを選択するか、Alt+R O を押します。

  2. クリーンアッププロファイル設定ページに移動します: コード編集 | コードのクリーンアップ | プロファイル

  3. 新しいカスタムクリーンアッププロファイルを作成するセクションの説明に従って、新しいプロファイルを作成します。新しいプロファイルの選択したプロファイル設定セクションで、アライメント属性チェックボックスをオンにします。必要に応じて、このプロファイルで他のコードクリーンアップタスクを有効にすることができます。

  4. オプションダイアログで保存をクリックして変更を適用し、ReSharper に保存場所を選択させるか、次へ保存リストを使用して変更を特定の設定レイヤーに保存します。詳細については、ReSharper 設定の管理と共有を参照してください。

  5. 設定を適用する範囲を選択します。

    • ファイルの任意の場所にキャレットを設定して、ファイルの設定を強制します。

    • ソリューションエクスプローラー内の 1 つまたは複数の項目を選択して、これらのノードおよびその子項目にあるファイルに設定を適用します。

  6. 以下のいずれか 1 つを実行します:

    • Control+Alt+F を押すか、メインメニューから ReSharper | 編集 | コードのクリーンアップ... を選択してください。

    • テキストエディターの任意の場所を右クリックするか、選択項目を右クリックし、コンテキストメニューでコードのクリーンアップを選択します。

  7. 開いているコードのクリーンアップダイアログで、新しく作成したプロファイルを選択します。

  8. 実行をクリックします。ReSharper は、選択した範囲であなたの設定を強制します。

コードのクリーンアップダイアログを開かずに属性スタイルを適用してプロファイルを選択する場合は、作成したプロファイルをサイレントクリーンアップにバインドし、Control+Shift+Alt+F を押して実行できます。属性スタイルの適用を他のコードスタイルタスクと組み合わせるカスタムクリーンアッププロファイルを作成することもできます。

属性スタイルの設定を構成する

属性のスタイル設定は、レイヤーベースの設定のメカニズムを使用して保存されます。とりわけ、このメカニズムにより、さまざまなソリューションのさまざまな設定を維持したり、これらの設定を VCS に保持したり、チームメンバーと自動的に共有することができます。

属性スタイルの設定を構成する

  1. ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページに移動します。

  2. 属性カテゴリでは、コーディングプラクティス / 規格に従ってセクション内の属性の結合または分離の値を選択します。

  3. 右側の列の通知するセレクターを使用して、設定とは異なるコードインスペクション検出コードの重大度レベルを設定できます。

  4. ReSharper は、属性の複数のフォーマットルールも提供します。これらのルールを表示および構成するには、ReSharper オプション(ReSharper | オプション)を開き、検索ボックスに attribute と入力し、コード編集 | C# | スタイルのフォーマットのページで一致したアイテムを確認します。

  5. オプションダイアログで保存をクリックして変更を適用し、ReSharper に保存場所を選択させるか、次へ保存リストを使用して変更を特定の設定レイヤーに保存します。詳細については、ReSharper 設定の管理と共有を参照してください。

また、複数のアトリビュートを並べ替えるための設定をエディターで変更することもできます。対応する問題がハイライトされます:

エディターから明示的 / 暗黙的な修飾子の設定を変更

  1. ReSharper のインスペクションによってハイライトされたコードの問題にキャレットを設定します。

  2. Alt+Enter を押すか、キャレットの左側にあるアクションインジケーターをクリックして、アクションリストを開きます。

  3. アクションリストで、インスペクション " 結合またはセクション内の属性 " | コードスタイルを設定するを選択し、希望のオプションを選択します。

    Changing the preference for arranging multiple attributes in the editor

  4. 変更は、スマートセーブロジックを使用して保存されます。

  5. 変更されたスタイル設定を共有設定レイヤーに保存する必要がある場合は、コードスタイルを設定するメニュー項目をクリックするか、選択されているときに Enter を押します。ReSharper は、ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページを開きます。ここで、必要に応じて設定を変更し、次へ保存をクリックして、目的の設定レイヤーを選択します。

この機能は、次の言語とテクノロジーでサポートされています。

関連ページ:

コードフォーマットルールの管理と適用 | ReSharper

コードスタイルの重要な点は、コードのフォーマット方法、つまり、空白と空白行を使用してコードブロックを配置および分離する方法、インデントにタブを使用するかどうか、および使用する方法。ReSharper コードフォーマットルールの広範なセットには、デフォルトの Visual Studio フォーマットオプションと多数のベストプラクティスを考慮したデフォルト構成があります。フォーマットルールのすべての詳細を構成し、コードにルールを適用できます。これらのルールは、ReSharper がコード補完およびコ...

コード補完 (IntelliSense) | ReSharper

ReSharper は、高度な機能を備えた Visual Studio のネイティブコード補完(IntelliSense)を補完し、拡張します。例: あなたの入力に基づいて提案のリストを絞り込み、選択した型と拡張メソッドを自動的にインポートし、メソッド名を補完するときに括弧を追加し、型に応じて変数とフィールド名を提案するなど。ReSharper のコード補完の機能に慣れ親しむために、いくつかの実装の基本があります: デフォルトでは、ReSharper はネイティブ Visual Studio の...

設計時にコードの問題を検出する | ReSharper

ReSharper は、エディターでコードファイルを開くとすぐに分析を開始し、最後まで編集を続けます。検出されたすべてのコードの問題は、重大度に従ってエディターでハイライトされます。問題のマップは、エディターウィンドウの右側のマーカーバーにも表示されます。ここでは、ファイルのステータスを即座に確認し、マークをクリックして特定のコードの問題に移動できます。デザインタイムインスペクションの機能:ReSharper によって実行されるデザインタイムコードインスペクションを説明するために、エディターに...

スコープの修正 | ReSharper

ほとんどのクイックフィックスは、キャレットで現在の問題を修正できますが、中には (たとえば、未使用のディレクティブを削除する、フィールドを読み取り専用にする、冗長なキャストの除去など)、現在のファイル、現在のプロジェクト、またはソリューション全体など、より大きな範囲で問題を自動的に見つけて修正できるものもあります。範囲内の修正を適用する:このような修正は、アクションリストの横に表示される小さな矢印で識別できます。範囲内の修正を適用する ReSharper のインスペクションによってハイライトされ...

コードインスペクション設定の構成 | ReSharper

設計時コードインスペクションを構成する:デフォルトでは、ReSharper は、サポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかに関係なく、コードインスペクションは常に特定のスコープで実行できます。メインメニューからを選択するか、Alt+R O を押してから、左側のを選択します。設計時コードインスペクションを切り替えるには、コード分析を有効にするチェックボックスを使用し...

ReSharper 設定の管理と共有 | ReSharper

ReSharper は、階層化された設定のメカニズムを使用して環境設定を保存するため、次の利点があります。さまざまなソリューションで異なる設定を行うことができます。環境設定のさまざまなサブセットを別の場所に保存し、特定のソリューションで作業するときに環境設定を組み合わせることができます。例: 記号のアイコンとチーム設定のコード形式を個人設定で保存し、これらの設定を自動的に組み合わせることができます。設定の特定のサブセットを VCS に保持することにより、チーム内の設定を同期できます。ReShar...