ReSharper 2026.1 Help

ソースコードのアノテーション

ReSharper のコードアノテーションを活用する最も簡単な方法は、ソースコードのシンボルにアノテーション属性を追加して、ReSharper にソリューションをより正確かつインサイトで分析してもらうことです。

プロジェクトでコードアノテーションのサポートを有効にする

プロジェクトでアノテーション属性を利用するには、プロジェクトで参照する必要があります。

  • 推奨される方法は、 JetBrains.Annotations アセンブリを使用して NuGet パッケージ(英語)をインストールすることです。

    実際には、パッケージを入手するために NuGet Web サイトにアクセスする必要はありません。 using JetBrains.Annotations; ディレクティブを追加し、対応する Alt+Enter アクションを使用して、パッケージを自動的にフェッチするだけです。

    ReSharper: NuGet から JetBrains.Annotations パッケージを自動的に取得するクイックフィックス
  • プロジェクト参照を追加できます。 JetBrains.Annotations.dll ReSharper インストールディレクトリで見つかります。

  • デフォルトの JetBrains.Annotations 名前空間または他の名前空間を使って、プロジェクト内のどこにでも 属性宣言を埋め込むこともできます。

ソリューション内のいずれかのプロジェクトで JetBrains.Annotations が参照されているか、属性宣言が埋め込まれている場合、目的のアノテーション属性を入力して Alt+Enter を押すと、現在のプロジェクトでこのモジュールを参照する クイックフィックスが呼び出され、欠落している using ディレクティブが追加されます。

JetBrains.Annotations モジュールへの参照を追加するためのクイックフィックス

また、 Control+Alt+Space を 2 回押すことで double インポート補完 を呼び出し、属性の検索、名前空間のインポート、参照の追加が行えます。

コード補完で NotNull 属性をインポートする

ソースコードにコードアノテーションの宣言を埋め込む

コードアノテーション宣言のコピーは、ReSharper オプション コードインスペクション | コードアノテーション ページで入手できます Alt+R、O 。 オプションとして、コピー時に宣言を内部的に作成することもできます。

アノテーション属性のデフォルト実装は JetBrains.Annotations 名前空間で宣言されていますが、アノテーションの動作にこの名前空間は必須ではありません。 宣言はソリューション内のどこに置いてもかまいません。ReSharper が自動的に検出します。 ただし、宣言が異なる名前空間にある場合は、下記のようにアノテーション属性でその名前空間を明示的に指定する必要があります。

また、ソリューションに複数のアノテーション属性の実装が含まれる場合があります。例えば、ReSharper のアノテーションクラス(CanBeNullAttributeNotNullAttribute など)と同じ名前のクラスが存在したり、ReSharper アノテーションクラスを含むサードパーティ製アセンブリを使用している場合などです。 そのような場合は、ReSharper が適切なアノテーション属性クラスを探す名前空間を選択できます。

コードアノテーション属性のソースを変更する

  1. メインメニューから ReSharper | オプション を選択するか、 Alt+R O を押してから、左側の コードインスペクション | コードアノテーション を選択します。

  2. JetBrains.Annotations 以外のアノテーションクラス(ReSharper は CanBeNullAttributeNotNullAttribute 宣言のみを検索する)を持つすべての名前空間(ソースコードと参照アセンブリの両方)は、 コードアノテーション属性を持つ名前空間 リストに表示されます。 目的の実装が含まれているエントリを確認します。

  3. リストに複数の名前空間がある場合は、 デフォルトアノテーションネームスペース リストで ReSharper コード解析エンジンが使用する名前空間を選択してください。

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

コンテキストアクションを使用してアノテーション属性を追加する

ReSharper がアノテーションクラスの場所を認識するとすぐに、 コンテキストアクションを使って、最も人気のあるアノテーション属性を追加できます:

  • [NotNull]

  • [CanBeNull]

  • [UsedImplicitly]

これらのアノテーションを追加するには、アノテーションを付けたいシンボルで Alt+Enter を押すと、ReSharper が文脈に応じて属性を提案します:

ReSharper: 「null にすることができます」コンテキストアクション
2026 年 6 月 12 日