web-dev-qa-db-ja.com

Visual Studio 2015または2017はIntelliSenseエラーを表示しますが、ソリューションはコンパイルされます

現在、新しいVisual Studio 2015を評価していますが、IntelliSenseで奇妙な問題が発生しました。新しいスタジオでメインソリューションをコンパイルすると、ビルドは成功しますが、それでも6つのエラーが表示されます。

それは本当のエラーではなく、インテリセンスエラーであることがわかりました。コードは間違いなく正しく、すべてが正常にコンパイルされています。ただし、コードは赤でマークされ、エラーリストにエラーが表示されます。

6つのエラーはすべて同じ起源を持っています。単純なコンストラクター呼び出しです。奇妙なことですが、まったく同じコンストラクターがエラーなしで発生することもあります。

エラーメッセージ:

Code: CS1729
Message: '<the class>' does not contain a constructor that takes that many arguments.
Project: <the project name>
File: <the path to the file>

新しいスタジオは、レガシーソフトウェア(VS13なし)なしで、新しくインストールされたWindows 7にインストールされました。

私はすでにキャッシュをクリアし、suoファイルを削除し、binディレクトリとobjディレクトリを削除し、ソリューションのクリーンアップと再構築などを試みましたが、何も機能しませんでした。

誰も私にその行動を説明できますか?

111
Ash

移行したプロジェクトでもこの問題が発生したため、Microsoft.CSharp dllを参照しました。一部のプロジェクトでは、プロジェクト内の参照を削除して再度追加する必要がありました。

数千のインテリセンスエラーと0のビルドエラーがありました。 .suoファイルを削除し、VSを再起動すると、IntelliSenseエラーがなくなります。

Suoファイルは、ソースに対して相対的に.vs\SolutionName\v14\.suoにあります

コメントによると、*.suoは隠しファイルであることに注意してください。

編集:コメントによると、VS2017にも同じ問題があるため、同様のソリューションを使用できます:Delete .vs\SolutionName\v15\.suo

183
Karel Kral

Visual Studio 2017 ASP.Net Core Projectで同様の問題に遭遇しました。次の手順は私のためのトリックをしました

  1. クリーンソリューションを実行する
  2. VSを閉じる
  3. .suoファイルの削除とbin/objディレクトリの削除
  4. VSを再度開く
17
Naren

他と同様の問題ですが、解像度は異なります。他の人を助けることができる場合の投稿。

Visual Studio 2017の実行15.5.2。私はGitを使用し、頻繁にブランチを切り替えます。数週間前、エディターにエラーを表示するようになりました(参照が有効であっても見つからないタイプに関連するすべて)。コンパイルはうまくいきました。 VS 2017 15.6 Preview(2018年1月6日)で同じ問題を確認しました。キャッシュ、SUOファイル、またはbin/objフォルダーを削除しても、影響はありません。最初は動作しているように見えます。 Visual Studioを再度開くと、すべてが正常に表示されます。 「ソリューションの再構築」を使用すると、IntelliSenseエラーが返されます。 Visual Studioのアンインストール/再インストールも試みました。

同じバージョンのVisual Studioを搭載した2台のマシンで同じ問題が発生しました。

欠落しているタイプに関するエラーを見ると、それらはすべて2つの参照プロジェクトに由来しているように見えました。これらの参照の1つは、ソリューション内の他のほぼすべてのプロジェクトで使用される共有プロジェクトでしたが、その1つは多くの参照のない小さなプロジェクトでした。たまたま、小さなプロジェクトが私の大きな共有プロジェクトからも参照されていました。 Visual Studioで、小さなプロジェクトをアンロードし、再ロードしました。エラーはなくなりました!これらのエラーは、Rebuild Solutionで返されませんでした。

その後、Gitブランチを切り替えて、エラーがすべて戻ってきました。幸いなことに、小さなプロジェクトをアンロード/リロードする上記の手順を繰り返し、エラーはなくなりました。

Gitブランチを切り替えるたびに、そのプロセスを繰り返すまでエラーが戻ります。アンロード/リロードする小さなプロジェクトのGitブランチ間での変更はありません。そのシーケンスが私の問題を修正している理由が不明です。

9
HgCoder

Visual Studio 2017「.suo」ファイルを.vs\SolutionName\v15.suoの場所から削除し、Visual Studioを再起動しました。これは私のために働いた。

2
Saurabh Raoot

今日、私はMSVC++ 2015で同様の問題を抱えています。私はほとんどあきらめ、IDEヒントなしで続けることに決めましたが、時々、サブプロジェクトのstdafx.hが問題を抱えていないことに気付きました標準ライブラリヘッダーが含まれます。モジュールのコンパイルが遅くなるかもしれないと提案しましたが、そこに標準ヘッダーを含めることでIntellisenseも修正されました。

1
Minor Threat

ウェブサイトを公開するときにのみインテリサーチエラーが表示されていました。 (ASP/C#サイト、VS 2017)。彼らは公開を破りました。サイトはローカルで正常に実行されました。

プリコンパイルの設定をオフにしてエラーをクリアし、正常に公開されました。公開->設定->ファイル公開オプション->公開中にプリコンパイル

0
Rahn

異なるVisual Studioバージョンで同様の問題が発生しました。

.suoまたは.vsフォルダーを削除しても役に立たなかった。

私にとっての解決策は、Extension StopOnFirstBuildErrorをアクティブにすることでした。ビルドメニューで[最初のエラーでビルドを停止]をオフにした後、ソリューションが完全にビルドされた後、Intellisenseに表示されるエラーはなくなりました。

0
Fabian

追加インクルードディレクトリに複数のstdfax.hがありました。意図したstdafx.hがパスの最初にあることを確認してください。

0
user472308