ReSharper 2020.2ヘルプ

不足している名前空間をインポートする

ファイルに名前空間がインポートされていない型を使用する場合、ReSharperはこれらの型を見つけて不足している名前空間インポートディレクティブを追加できます。たとえば、ファイルにコードのブロックを貼り付けた後など、未解決の型にいくつかの不足している名前空間がある場合、ReSharperはこれらすべての名前空間を1回の操作でインポートできます。

ReSharperは、現在のプロジェクトで参照されているアセンブリ、ソリューション内の他のプロジェクトで参照されているアセンブリ、推移的に参照されているアセンブリなど、インポートされていないネームスペースを次のアセンブリで探します。現在のプロジェクトで参照されていないモジュールで型が見つかった場合、ReSharperはこのモジュールへの参照を追加することも提案します。

欠落しているネームスペースは、ネームスペースのインポート設定に従ってインポートされます(たとえば、インポートディレクティブが挿入されたり、タイプ名の修飾子が追加されたりします)。
インポートディレクティブは決まった順序で追加されます。すべての System.* 名前空間が最初に配置され、ドットの後の2番目の単語でアルファベット順に並べ替えられます。次に、他のすべての名前空間がアルファベット順に表示されます。

コードファイルを編集すると、設計時コードインスペクションで名前空間が欠落しているタイプが検出され( 有効になっていることを確認してください)、エラーとして強調表示されます。デフォルトでは、見つからない名前空間をインポートするアクションは通常のクイックフィックスとは異なります。キャレットの位置に関係なく、最初の未解決のシンボルの上にカーソルを移動するポップアップとして表示されます。

ReSharper: Namespace import quick-fix

または貼り付けられたコードのボックの後:

ReSharper: Namespace import fix for pasted code block

現在のキャレット位置を変更せずに、習慣的な Alt+Enter ショートカットを使用して、未解決のすべてのタイプに対してこの修正を適用することができます。編集セッションは中断されません。貼り付けられたコードのタイプをインポートするアクションは、貼り付けられたコードブロック内のインポートされていないすべてのタイプが、現在のプロジェクトの参照モジュールで明白に見つかる場合にのみ表示されます。

いくつかの名前空間に未解決のシンボルが含まれている場合、ReSharperではインポートする名前空間を選択できます。

ReSharper: choosing a namespace to import

何らかの理由でポップアップが表示されたときに必要な名前空間をインポートしないことを選択した場合、またはReSharperオプション(Alt+R O)のコード・インスペクション | 設定ページでポップアップを使用して「名前空間をインポート」アクションを表示するを無効にした場合、キャレットを非インポートされたタイプ。Alt+Enter を押して、対応するクイックフィックスを選択します。

ReSharper: quick-fixes for missing namespace import

ポップアップまたは Alt+Enter メニューのエントリを介してインポート候補を表示するかどうかをすばやく選択するには、ファイルステータスインジケーターのコンテキストメニューを使用します。

ReSharper: Choosing import popup mode from the context menu of the file status indicator

たとえば、ソリューションにシステムタイプに類似した名前空間がある場合(たとえば MyFramework.MyCollections.List)が、実際には使用していない場合など、いくつかの名前空間を提案しないようにすることができます。このような記号を提案から除外するには、ReSharperオプション(Alt+R O)のコード・インスペクション | 設定 | 自動インポートページのインポートおよび補完から除外リストに追加します。エントリの形式は Fully.Qualified.Name , Fully.Qualified.Name.Prefix*または *Fully.Qualified.Name.Suffixです。ジェネリック型は List`1として指定されます。

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

Language: C#Language: VB.NETLanguage: C++Language: HTMLLanguage: ASP.NETLanguage: RazorLanguage: JavaScriptLanguage: TypeScriptLanguage: CSSLanguage: XMLLanguage: XAMLLanguage: ResxLanguage: Build ScriptsLanguage: ProtobufLanguage: JSON
Feature is available in C#Feature is available in Visual Basic .NETFeature is not available in C++Feature is not available in HTMLFeature is available in ASP.NETFeature is available in RazorFeature is not available in JavaScriptFeature is available in TypeScriptFeature is not available in CSSFeature is not available in XMLFeature is not available in XAMLFeature is not available in Resource filesFeature is not available in build script filesFeature is not available in ProtobufFeature is not available in JSON

C#の機能の使用方法については、こちらの説明と例を参照してください。他言語の詳細については、言語によるReSharperの対応するトピックを参照してください。

最終更新日: 2020年8月21日

関連ページ:

インポート・シンボル補完

ReSharper | 編集 | シンボルのインポートこのコマンドは、名前空間が現在のファイルにインポートされているかどうかにかかわらず、現在のプロジェクトで参照されているモジュールの型と拡張メソッドを示します。提案された各項目の名前空間は、候補リストの右側に表示されます。インポートされていないタイ...

コードの構文スタイル: 名前空間のインポート

各ソースコードファイルには、適切な名前空間のインポートセット(C#のディレクティブ)が必要です。インポートがないと、コードはコンパイルされません。未使用のインポートがあると、コードの維持が困難になる可能性があります。さらに、名前空間のインポートにはさまざまな方法があります。たとえば、ディレクティブを...

設計時にコードの課題を検出する

ReSharperは、エディターでコード・ファイルを開くとすぐに分析を開始し、最後まで編集を続けます。検出されたすべてのコードの課題は、重大度に従ってエディターで強調表示されます。課題のマップは、エディターウィンドウの右側のマーカーバーにも表示されます。ここでは、ファイルのステータスを即座に確認し、...

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

コード注釈を使用して、ReSharperがコードをインスペクションする方法をカスタマイズすることもできます。設計時コードインスペクションを構成する:デフォルトでは、ReSharperは、サポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効に...

クイックフィックスの例

クイックフィックスは、さまざまな状況で利用できますが、リストアップするには大きすぎます。ReSharperは、サポートされているすべての言語で合計1200を超えるクイックフィックスを提供します。ここでは、状況の小さな選択を使用して使用する方法を示します:型のミスマッチ:式の型を、式コンテキストに適用...

マーカーバーとステータスインジケータ

マーカーバーとステータスインジケーターを使用すると、現在のファイルの設計時コードインスペクションの結果を観察し、コードの課題間を移動できます。また、マーカーバーには、他のReSharperアイテムの特別なマークが表示されます。次の場合、マーカーバーは表示されず、ステータスインジケータにはポーズアイコ...