web-dev-qa-db-ja.com

Visual Studio 2015 Broken Razor Intellisense

VS2015インスタンスをインストールして修復した後、MVCビューでIntelliSense(サーバー側)を動作させることができません。セッションで。cshtmlファイルを初めて開くとすぐにメッセージプロンプトで警告が表示され、Activitylogファイルにアドレス指定されます。 ActivityLog.xmlで取得されたエラーメッセージ(ショートバージョン):

System.ArgumentException:アイテムは既に追加されています。辞書のキー: 'RazorSupportedRuntimeVersion'

完全版は次のとおりです。

System.Reflection.TargetInvocationException:呼び出しのターゲットによって例外がスローされました。 --->System.ArgumentException:アイテムはすでに追加されています。辞書のキー: 'RazorSupportedRuntimeVersion'追加されるキー:System.Collections.Hashtable.Insert(Object key、Object nvalue、Boolean add)の 'RazorSupportedRuntimeVersion' System.Collections.Hashtable.Add( System.Collections.Specialized.HybridDictionary.Add(オブジェクトキー、オブジェクト値)のMicrosoft.VisualStudio.Utilities.PropertyCollection.AddProperty(オブジェクトキー、オブジェクトプロパティ)のMicrosoft.VisualStudio.Html.Package.Razorのオブジェクトキー、オブジェクト値) .RazorVersionDetector.Microsoft.Html.Editor.ContainedLanguage.Razor.Def.IRazorVersionDetector.GetVersion(ITextBuffer textBuffer)at Microsoft.Html.Editor.ContainedLanguage.Razor.RazorUtility.TryGetRazorVersion(ITextBuffer textBuffer、Version&razorVersion)at Microsoft.Htt。 ContainedLanguage.Razor.RazorErrorTagger..ctor(ITextBuffer textBuffer)---内部例外スタックトレースの終了--- System.ReflectionのSystem.RuntimeMethodHandle.InvokeMethod(Object target、Object [] arguments、Signature sig、Boolean constructor) System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr、Binderバインダ、Object [] args、CultureInfo culture、Object [] activationAttributes、StackCrawlMark&stackMark)のRuntimeConstructorInfo.Invoke(BindingFlags invokeAttr、Binderバインダ、Object []パラメータ、CultureInfo culture) Microsoft.Html.Editor.ContainedLanguageのSystem.Activator.CreateInstance(Type type、Object [] args)のActivator.CreateInstance(Type type、BindingFlags bindingAttr、Binderバインダ、Object [] args、CultureInfo culture、Object [] activationAttributes)。 Common.ContainedCodeErrorTaggerProvider'1.CreateTagger [T](ITextBuffer textBuffer)at Microsoft.VisualStudio.Text.Tagging.Implementation.TagAggregator'1.GatherTaggers(ITextBuffer textBuffer)

助けがあれば、フォントの色をカスタマイズしたり、Web Essentials、Bundler&Minifier、およびWeb Compiler拡張機能をインストールしたりします。

UPDATE:既存のWebアプリケーションを開くとき、または新しいWebアプリケーションを最初から作成するときに発生します。 VS2013のインスタンスもインストールされ、同じマシンで実行されています。

No intellisense at all

上の写真からわかるように、インテリセンスはまったくありませんし、コードの色付けもありません。

それを修正する方法についての手がかりはありますか?前もって感謝します。

140

ユーザーデータをリセットしてこの問題を解決しました

devenv.exe /resetuserdata

プロジェクトの「.vs」フォルダーを削除します。


警告:これにより、すべてのユーザー設定がリセットされます。基本的に、工場出荷時のデフォルトにリセットするようなものです。カスタムキーボードショートカット、インストールした拡張機能などは失われます。

127
Yanos

これは私にとっても繰り返されており、拡張機能の更新に関連しているようですが、特定の問題を責めることはまだできていません。私が発見できたのは、それほど邪魔にならない解決策です。

私の場合、このディレクトリのコンテンツを削除すると、IDEが回復できます。

%LocalAppData%\Microsoft\VisualStudio\14.0\ComponentModelCache

編集:私はちょうどこれも便利だと思いました- MEFコンポーネントキャッシュをクリア (VSIXギャラリーを開く)

162
brahnp

FWIW、私は2つの異なるマシン上のVS 2015 Enterpriseでこの問題を抱えていました。 1台のマシンで、ユーザーデータをリセットすると問題がなくなりました(しばらく)。もう一方のマシンでは、VSを完全にアンインストールして再インストールする必要があり、しばらくの間問題はなくなりました。両方のマシンで、拡張機能をインストールした後に問題が再発しました(Web Essentialsのインストール時に1回、Git Diff Marginのインストール時に1回)。

MSDNの技術サポートケースを作成しましたが、答えは...ええ、それはバグであり、MSはそれを知っており、彼らは作業中です。

特に実用的な答えではありませんが、それでも答えです...

編集:そして、問題を回避するというテーマで、この「答え」を投稿してから数回問題に遭遇しました。最近では、NuGetパッケージマネージャーの更新プログラムをインストールしましたが、VSを再起動するとこの問題が発生し始めました。 devenv.exe /resetuserdataを実行しましたが、それは役に立ちませんでした。まだ壊れていました。だから私はもう一度試して(devenv.exe /resetuserdataを実行)、bada bing badaブーム、問題はなくなりました(今のところ)。道徳は、「最初に成功しない場合...」の線に沿ったもののようです

11

Resharperを持っていることのデュオが発生した可能性があります。
将来のバージョンでは修正される予定ですが、現在(バージョン10.0.2)では壊れています。 ResharperはVisual Studioのインテリセンスをオーバーライドするため、機能しません。また、Resharperが削除されるため、devenv.exe /ResetUserDataを実行すると修正される理由も説明されています。

メニューから手動でインテリセンスの電力をVSに戻します。
ReSharper >> Enviroment >> IntelliSense >>次を入力します。
enter image description here

そして、これはVSからのインテリセンスがどのように見えるべきかです:
enter image description here

8
NucS

私は同じ問題に出会いましたが、原因は他の答えとは異なりました。

Visual Studioの更新により、2015年9月にTypeScriptが更新され、Visual Studio 2015のWeb Developer Toolsコンポーネントがアンインストールされたと思われます。これにより、Intellisenseが機能しなくなります。

インストーラーオプションでWeb Developer Toolsを再度インストールし、インストール後にComponentModelCacheを削除しました。それは私のために働いた。

6
Wakusei

2セントを追加します。以前のソリューションはどれも役に立たなかったので、このリンクを見つけました:

http://www.c-sharpcorner.com/blogs/how-to-resolve-intellisense-issue-in-visual-studio1

特にこれ

ソリューション4:

次に、次の場所から設定をリセットします。

ツール->設定のインポートとエクスポート->すべての設定をリセットします。

そこからVisual C#を選択します

4
Alexander D

これですぐに修正されました。

Visual Studioの場合:

[ツール]、[オプション]、[テキストエディター]、[すべての言語]、[全般]の順にクリックします。[メンバーの自動リスト]のチェックを外します。ただチェックを外したもの)OKをクリックします

4

参考:VS 2015 PROのインストールには、すべてのサードパーティがフルインストールされています。

私はここの記事でそれが私を助けなかったすべての可能な解決策を試しました。クレイグ・ゴールデンソフが書いたことは、私にとって解決策を見つけるのにある程度役立ちました。

そこで最初にやったこと:Text Editor-> All Languages-> General Statement completionのすべてのチェックボックスをオフにします: enter image description here

[OK]をクリックした後、[オプションダイアログを再度開く]:同じセクションをすべて確認します: enter image description here

設定を再度適用します。 Visual Studioを再起動する必要があります。再起動後、ロードに時間がかかりますが、その後はうまくいきました。

1
Eugene Bosikov

VS IdeがIntellisenseをまったく表示しない場合があります。ソリューションを閉じます。 VSを閉じます。次に、それを再度開き、問題を解決します。

1
Thomas.Benz

他のオプションがいずれも機能しない場合は、回避策があります。 「。」を入力した後「Ctrl +スペース」キーを押すと、Intellisenseダイアログが強制的に表示されます。

.cshtml MVCかみそりファイルで作業しているときにこの問題が発生していました。

1
Versatile

/ResetUserDataソリューションが最善の策ですが、これの考えられる原因を見つけたと思います...

現在、Umbracoを使用してBackOfficeでマクロパーシャルを作成しています。これらのファイルが作成されたら、(すべてのファイルを非表示/表示)ボタンをクリックして、ソリューションにマクロパーシャルを表示し、Razor構文の強調表示が機能しなくなったように見えるので、VSから直接作成されない新しいファイルがソリューションに導入されますこの問題を引き起こします。

ソリューションにファイルを追加する場合でも、構文の強調表示は機能しません。

1
ChronixPsyc

すべてのユーザーデータをリセットせずに別のソリューションがあります

(ただし、ウィンドウレイアウト/ツールバーのみ):

すべてのVS2015インスタンスを閉じ、[最終的にバックアップし、]フォルダーを削除します。

"[User Directory]\AppData\Roaming\Microsoft\Visual Studio\14.0"

VS2015を再度開きます:レイアウトは工場出荷時のプリセットにリセットされましたが、Razor構文は機能します

1
T-moty

%LocalAppData%\Microsoft\VisualStudio\14.0\ComponentModelCacheからすべてのファイルを削除してVSを再起動するだけで、すべてをリセットする必要はありません。問題ありません。

0
Nilesh Moradiya

これは面白そうに聞こえるかもしれませんが、ただ1つのことをするだけです。

ブレークポイントを任意の行に配置し、その5秒間機能しない場合、最初の行に移動してそこにブレークポイントを配置します。ブレークポイントを配置すると、ブレークポイントの設定が要求されます。 enter image description here その設定をクリックして、その設定を閉じます。できたインテリセンスは現在動作しています。

VS 2015コミュニティエディションがあります。以前はVS 2015 Enterpriseでしたが、それが起こったのですが、コミュニティを取得した後、両方で同じことが起こり、同じソリューションが機能することがわかりました。

作業中に誤ってその解決策を見つけましたが、プロジェクトが実行されていないときにもそれを行います。そのブレークポイントも削除できます。

0
Jay

私はこれを別の同様の質問で言及したウェブページのバージョンを更新することによってのみ修正できました:

VS 2015で動作しないカミソリインテリセンス

0
Tony Anderson

私はキースターでわずかな痛みでしたが、うまくいったようです。私の場合、それはもはやインテリセンスを行わない.aspxファイルでした(.aspxファイル名を愚かに変更した後...学んだことを学びました!)

  1. たとえば、すべてのコードをファイル(.aspxおよび.cs)からメモ帳にコピーしました。
  2. .aspxファイルを削除しました(これにより、すべての子ファイルが削除されました)。
  3. プロジェクトを保存しました。同じ名前の新しい.aspxファイルを作成しました。
  4. メモ帳からコードをコピー/貼り付けました。
  5. 保存しました。
  6. インテリセンスをもう一度試しました。出来た!

ラウンドアラウンドですが、アンインストール/再インストールほど悪くはありません。皆さん頑張ってください!願わくば、MSがこれらの年の1つを修正することを願っています!

0
John Waclawski

私が無駄にした時間を無駄にしないようにしたいという理由だけで、この回答を別のSO質問に投稿しました。私の問題は、プロジェクトにファイルを追加したが、それらを含めなかったことでした。そこで、すべてのファイルを表示することにしました。

enter image description here

次に、フォルダーを含めることを選択しました:

enter image description here

この問題は、MVC Webサイトをプロジェクトとして開くときにのみ表示され、Webサイトとして直接開くときは表示されません。

0
Andy Brown