ReSharper 2019.2ヘルプ

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

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

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

欠落しているネームスペースは、ネームスペースのインポート設定に従ってインポートされます(たとえば、インポートディレクティブが挿入されたり、タイプ名修飾子が追加されたりします)。
importディレクティブは決まった順序で追加されます。すべての 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+Enter を押して対応するクイックフィックスを選択することで、いつでも型をインポートできます。

ReSharper: quick-fixes for missing namespace import

たとえば、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 availableFeature is availableFeature is not availableFeature is not availableFeature is availableFeature is availableFeature is not availableFeature is availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not availableFeature is not available

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

最終更新日: 2019年11月13日

関連ページ:

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

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

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

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

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

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

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

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

クイックフィックスの例

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

異なる言語でのReSharperの機能

以下の表は、各ReSharper機能がサポートされている言語/技術を説明しています。言語固有の機能のみを一覧表示し、プロジェクト依存関係図、名前空間の調整リファクタリング、スタックトレースエクスプローラー、最近のファイルを見るなどのプロジェクト/ソリューションのスコープには多くの機能は含まれていませ...