ReSharper 2020.3 ヘルプ

プロジェクト固有のプロパティを構成する

ReSharper | 編集 | プロジェクト項目のプロパティを編集する
ReSharper_EditProjectItemProperties

ReSharper の設定のメインセット(ReSharper | オプションダイアログで設定)は、グローバルまたはソリューションごとに適用されます。各プロジェクトまたはフォルダーごとに個別に設定できる環境設定もあります。これらの設定は、プロジェクトアイテムのプロパティポップアップで利用できます。プロジェクトアイテムのプロパティポップアップは、ソリューションエクスプローラーでプロジェクトのコンテキストメニューからプロジェクト項目のプロパティを編集するを選択して呼び出すことができます。

ReSharper: Project item properties

他の ReSharper 設定と同様に、プロジェクト固有のプロパティは、[ProjectName].csproj.DotSettings(C# バージョンなどの一般的な設定を対象)と [ProjectName].csproj.DotSettings.user(ローカルパスマッピングなどの個人設定を対象)の 2 つのファイルに保存できます。必要に応じて、[ProjectName].csproj.DotSettings ファイルをソース管理下に置くことで、チームと共通の設定を共有できます。
UI からプロジェクト固有の設定を編集すると、それらは [ProjectName].csproj.DotSettings ファイルに保存されます。

名前空間プロバイダ

フォルダーでのみ使用できます。

デフォルトでは、ReSharper は、各クラスが表示される名前空間がプロジェクト内の場所と一致するとみなします。プロジェクトの「ルート」名前空間は、プロジェクトのプロパティで定義されています。

ReSharper code inspection: Namespace does not correspond to file location

上記の結果、プロジェクトレベルのすべてのコード要素が Nancy.Embedded 名前空間に現れることが予想され、それ以外の場合は警告が発行されます。

名前空間は、フォルダーの導入により深くなります。以下の例では、Conventions という名前のフォルダーが Nancy.Embedded.Conventions 名前空間に表示されるすべての項目を必要とします。しかし、余分な名前空間要素を追加するためにフォルダーを必要としない場合があります。そのような場合、名前空間プロバイダに設定することができます。

ReSharper: 'Namespace provider' property of a project folder

名前空間プロバイダではないフォルダーは、その中に含まれる要素の名前空間に影響を与えません。ReSharper は、関連するコードを適宜分析してリファクタリングします。

追加のアセンブリ参照 プロジェクトがカスタムの方法でいくつかのアセンブリを参照する場合、ReSharper はそれらを見つけられない可能性があるため、このプロジェクトを正しく分析できません。
このセミコロンで区切られたリストを使用して、ReSharper にそれらのアセンブリの場所を知らせ、それらのアセンブリからのシンボルを正しく解決できるようにします。
追加のコンパイル項目 プロジェクトにカスタムの方法でファイルが含まれている場合、ReSharper はそれらを見つけられない可能性があるため、このプロジェクトを正しく分析できません。
このセミコロンで区切られたリストを使用して、ReSharper にそれらのファイルの場所を知らせ、ファイルを正しく解決できるようにします。
C# / VB 言語レベル このセレクタを使用して言語バージョンを選択してください。デフォルト値は、ReSharper がプロジェクト設定に基づいて言語バージョンを自動的に検出することを意味します。選択された言語バージョンに応じて、ReSharper のコードインスペクションはコードの問題を検出し、選択されたバージョンに関連する改善を提案します。
強制コール MsBuild このオプションを使用して、MsBuild 経由でモジュール参照を取得します。例: これは、COM API リファレンスがあり、プロジェクトが古い Visual Studio バージョンで Roslyn のサポートなしで開かれている場合に役立ちます。
カスタム pageParseFilterType の処理 このプロパティは、Web プロジェクトでのみ使用できます
このセレクターを使用して、ReSharper が Web.config の pages 要素(英語)pageParseFilterType 属性の認識されない値をどのように処理するかを選択します。
ローカライズ可能な この設定は、ローカライゼーションインスペクションを実行するかどうかを定義します。デフォルト値が選択されている場合、インスペクションは、プロジェクトに少なくとも 1 つのリソースファイルがある場合にのみ実行されます。はいおよびいいえ値により、このインスペクションを明示的に有効化 / 無効化できます。
ローカライズ可能なインスペクタ ローカライズ可能なインスペクタ プロジェクトプロパティは、LocalizableAttribute でマークされたメンバーによって消費されない文字列リテラルを処理する方法を定義します。楽観的アルゴリズムはそのような文字列を無視し、悲観的なそれらにローカライズ可能としてフラグを立てます
プロジェクトファイルからプロジェクトモデルを読み取る

その機能のほとんど(ナビゲーションコード分析リファクタリング、およびコード補完を含む)について、ReSharper は現在のソリューションのモデルを構築および維持します。モデルはキャッシュされ、ソリューション構造内の任意のアイテムに即座にアクセスするために使用されます。

デフォルトでは、ReSharper は Visual Studio とは独立してプロジェクトファイルとソリューションファイルを読み取ります。この方法は、次の理由で推奨されます。

  • Visual Studio COM API を使用しないため、UI スレッドをブロックしません。

  • 複数のフレームワークを対象とするプロジェクトのより信頼性の高いモデルをレンダリングします。

ただし、いくつかの小さな副作用があります。

  • ReSharper には、最新のプロジェクトとソリューションファイルが必要です。ファイルが編集されたが保存されていない場合、自動的に保存されます。

  • 理論的には、ReSharper がプロジェクトファイルを一時的にロックしているため、ビルド中にファイルにアクセスできませんエラーが発生する可能性は非常にまれです。この場合、もう一度ビルドを開始できます。

上記のいずれかに問題がある場合は、このオプションをに設定して、ReSharper が Visual Studio COM API を介してプロジェクト構造を読み取るようにします。これにより、少し遅くなる可能性があります。
または、ReSharper オプション(Alt+R, O)の環境 | 一般ページにあるプロジェクト / ソリューションファイルからソリューションモデルを直接読み取るチェックボックスを使用して、ソリューション内のすべてのプロジェクトに対してこの動作を構成することもできます。

パスマッピング このプロパティは、Web プロジェクトでのみ使用できます
この設定を使用すると、アプリの設計中にファイルの場所をアプリがデプロイされる場所と同期できます。詳細については、パスマッピングを参照してください。
ソリューションワイドインスペクション この設定は、プロジェクトでソリューションワイドコードインスペクションを有効にするかどうかを定義します。オンおよびオフ値により、このインスペクションを明示的に有効化 / 無効化できます。内部シンボルのみ値は、内部(英語)アクセス権を持つタイプおよびタイプメンバーに対してこのインスペクションを部分的に有効にします。
この設定は、ソリューション全体の分析が有効になっている場合にのみ適用されることに注意してください。
Roslyn を使ってプロジェクト参照を入手する Visual Studio 2015 以降、ReSharper は Roslyn を介してプロジェクト参照を取得します。一部の参照が正しく解決されない場合は、このオプションを無効にして、COMAPI を介して参照を取得できます。

関連ページ:

ReSharper 設定の管理と共有

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

オプション

Alt+R, O オプションダイアログは ReSharper 設定の中心的な場所です。左上隅にある検索ボックスを使用して、目的の設定を見つけることができます。ターゲット C# バージョンなど、一部のプロジェクト固有のプロパティは、Visual Studio のプロパティウィンドウの ReSharper プロパティグループで構成されます。プロジェクトごとに ReSharper の設定を保存することもできます。詳しくは、JetBrains.NET ツールブログ: プロジェクトごとの設定またはテストプロジェ...

ローカライゼーションインスペクションとクイックフィックス

ReSharper は、リソースファイル内のローカライズ可能な文字列、リソースの問題などを検出することにより、アプリケーションをローカライズするのに役立つ多数のコードインスペクションを提供します。これらのインスペクションは、オープンドキュメントの設計時にローカライゼーションの問題を検出し、ソリューション全体まで特定の範囲でローカライゼーションの問題を見つけることができます。設計時には、検出された問題があなたの注意を引くためにハイライトされます。ハイライトされた問題を解決するために、ReSharp...

コードインスペクションと HTML でのクイックフィックス

メイン ReSharper のコード分析機能(コードインスペクション、コードの問題のクイックフィックスなど)も HTML でサポートされています。これらの機能の詳細については、コード解析セクションの対応するトピックを参照してください。ReSharper がどのようにインスペクションコードを適用して HTML コードを検証し、時代遅れまたは非標準の要素や属性に下線を引くかの例を示します。パスマッピング:Web アプリケーションを開発するときに、それを時々、宛先サーバーにデプロイします。ただし、宛...

ソリューション全体の分析

ソリューション全体の分析では、プロジェクトのコンパイルを妨げないものを含め、サポートされているすべての言語でエラーが検出されます。プロジェクトにこのようなファイル(JavaScript、CSS、HTML など)が含まれている場合、ソリューション全体の分析は、それ以外の場合は実行時にのみ検出される可能性のあるエラーを見つけるのに役立ちます。ReSharper のソリューション全体の分析では、2 つの関連しているが異なる機能が実現します。ソリューション全体のエラー / 警告モニタ:ReSharper...