86

最近扱っているプロジェクトソリューションでCodeLensがなぜか動かなくなってしまいました。「-参照」の代わりに参照が表示されていません。しかし、別のプロジェクトで Visual Studio を開くと、魅力的に動作します。CodeLens が有効になっていることを確認できます。それを機能させるアイデアはありますか?

4

17 に答える 17

84

私の解決策:

CodeLens 機能をオフにしてから、もう一度オンにします。

  • [ツール] -> [オプション...] -> [テキスト エディター] -> [すべての言語] -> [CodeLens] に移動します。
  • [CodeLens を有効にする] オプションのチェックを外し、[OK] をクリックします。
  • Tools -> Options... -> Text Editor -> All Languages -> CodeLens に戻ります。
  • [CodeLens を有効にする] オプションをオンにして、[OK] をクリックします。

注: 問題の .cs ファイルを閉じてから再度開くことで、以前に問題を修正しました。参照ファイルを閉じる必要がある場合もあります。

私の問題:

元のポスターと同様に、CodeLens は多数のリファクタリングを行った後、参照の更新を停止しました。存在しないコードへの古い参照が表示されていました。元の投稿で説明されているように、「- 参照」の問題も表示されていました。

私の環境と特定のシナリオ:

  • Visual Studio 2015 と Service Pack 2 および Resharper Ultimate 10.0.1
  • 私は大量のリファクタリングを伴う大規模なオーバーホールを行っていましたが、私のプロジェクトは 1 時間ほどコンパイルできませんでした。プロジェクトを再度コンパイルすると、参照が機能しなくなりました。
于 2016-05-05T23:20:06.503 に答える
13

.suo環境/ソリューション設定を保存しているファイルを削除してみてください。これは私を助けました。

于 2016-08-04T18:13:19.553 に答える
6

CodeLens の動作を妨げる循環参照がソリューションに含まれている可能性があります。Visual Studio Connect サイトのこの問題に関するコメントには、いくつかの詳細が記載されています。

どういうわけか、私のソリューションの 2 つのプロジェクトが相互に参照し、循環参照が発生しました。未定義のクラスを参照する Resharper のショートカットの副産物だったと思います。すべての参照をクリーンアップしたら、参照カウントで有効な値を取得できるようになりました。

どのように参照を「クリーンアップ」しましたか?

私の場合、私のソリューションには複数のプロジェクト ファイルがあります。プロジェクト A の参照フォルダーには、プロジェクト B への参照がありました。プロジェクト B の参照フォルダーには、プロジェクト A への参照がありました。これが循環参照の原因でした。これを「手動で」実行しようとすると、VS は循環参照に関する警告を表示します。

これをクリーンアップするために、プロジェクト A からプロジェクト B への参照を削除しました。プロジェクト B でいくつかのマイナーなクラス定義を行ったので、すべてが最終的にコンパイルされます。

于 2013-12-29T17:53:57.680 に答える
4

ファイアウォールで Visual Studio をブロックすると、Code Lens が機能しないことがわかりました。

そのため、ファイアウォールからブロックを解除して機能させます。

または、ファイルのファイアウォール設定を編集します。

C:\Windows\Microsoft.NET\assembly\GAC_32\ 
   Microsoft.Alm.Shared.Remoting.RemoteContainer\
   v4.0_12.0.0.0__b03f5f7f11d50a3a\
   Microsoft.Alm.Shared.Remoting.RemoteContainer.dll
于 2015-02-04T18:35:56.170 に答える
2

「アップデート1」がすでにインストールされているVS2015でこの問題が発生しました。問題は、VS2015を「デフォルト」オプションではなく「カスタム」セットアップで最初にインストールし、「共通ツール」の下の「Git for Windows(サードパーティ)」オプションを誤って省略したことです。

これは、次の手順で修正できます。

  • VS2015 セットアップを再度実行します (コントロール パネルから - アンインストール プログラム)。
  • VS2015 を右クリックし、[変更] を選択します。
  • ポップアップ画面で「変更」を選択
  • セットアップ画面で「Git for Windows (サードパーティ)」を選択
  • セットアップを続行し、選択した機能をインストールします
于 2016-03-09T15:49:22.603 に答える
0

このスタック オーバーフローの質問への回答を読んだ後、CodeLens は参照のみを表示していますか? Codelens の問題は、Visual Studio 2015 Update 1 を実行していたが、Team Foundation Server 2012 を使用していたことにあると判断しました。前。次に、ソリューションをリロードしましたが、どこでも「–参照」とだけ表示されるという問題がありました。Visual Studio を閉じ、再度起動してソリューションをリロードすると、以前と同じように正しい参照カウントが表示されました。

于 2015-12-28T04:29:39.347 に答える
0

この問題も見たので、上記の解決策のほとんどを試してみましたが、うまくいきませんでした。さらに、新しく追加された特定のクラスが、Visual Studio で白/黒 (通常のテキスト) として表示されていました。

リリースへの変更は通常、役に立ちましたが、長期的な解決策ではありませんでした。ただし、これは両方の問題に役立ちました-別のマシンで検証されました。手順の一部を省略できる場合があります。

  • すべてのドキュメント タブを閉じる
  • クリーン ソリューション
  • ソリューションを右クリックし、[ライトウェイト ソリューション ロードを有効にする] をクリックします。
  • ソリューションを閉じる
  • ソリューションを再開する
  • ソリューションを右クリックし、[軽量ソリューションの読み込みを無効にする] をクリックします。
  • ソリューションを閉じる
  • ソリューションを再開する
  • 再構築
于 2017-11-15T14:37:55.987 に答える
0

私も同じ問題を抱えていましたが、私と同じ開発環境を持っている同僚にはそれがありません...

両方の環境の唯一の違いは、RAM の量です。彼の VM には 10 GB が割り当てられており、私の場合は 6 GB が割り当てられています。VM に割り当てられた RAM の量を 8 GB にアップグレードしたので、すべての参照が表示されます。

于 2015-01-20T11:56:20.080 に答える
0

新しい VS 2015 update 3 で、中レベルのソリューション 10 以上のプロジェクトの大規模なクラスで発生し、循環参照、不良な SUO ファイル、またはその他のものとは関係がないことがわかりました。一時ファイルの場所を削除し(すでに述べたように)、VSを閉じてから再度開いて「ALT + 2」(コードレンズの参照検索を強制)を押すと、魔法のように機能するようです。

一部のソリューションやプロジェクトでも表示され、Visual Studio は古い参照 suo ファイルを .vs フォルダーに作成します。正確な韻や理由はわかりませんが、私の場合は作成でき、CodeLens は再び機能しました。ソース管理下のプロジェクトで Visual Studio のオプションが何らかの形で参照されている可能性があります。私が知っているように、これはGitHubの管理下にある古いソリューションで何度もアップグレードしましたが、.gitignoreファイルがあります(無視ファイルはソース管理に応じて変更される可能性があります)。更新する必要があるソース管理ファイルにロックがあり、更新されない場合、過去に他の技術者と同様のことが起こったと言えば十分です。簡単な答えは、設定ファイルを無視して削除することです。

于 2016-09-12T17:39:43.167 に答える