プロジェクトがビルドされてもVisual Studioにエラーが表示される


265

C#ソリューションでVisual Studioに問題があります。完全にランダムなエラーが表示されますが、プロジェクトはビルドされます。現在、33個のファイルにエラーがあり、それらすべてに赤い波線が表示されています。

ソリューションのクリーニング/再構築、Visual Studioの終了、およびコンピューターの再起動を試みました。また、Visual Studioでコンパイラーのエラーが発生した場合でも、デバッグの実行で説明されている手順を実行するようにしました。.csファイルを変更でき、ソリューションの変更を確認できます。

なぜそれを行うのかについて誰かが知っていますか?


3
ReSharperまたはこのような他のアドオンがインストールされていますか?赤の波線も発生します。
user1908061 2013

3
各プロジェクトからbinおよびobjフォルダーを削除してみてください。
チャーリーブラウン

エラーまたは警告?プロジェクトがビルドされた場合、これらは警告であることを意味します。すべてのアドオンを無効にして、どのように機能するかを確認します。
イーサン2013

VS 2013 RC候補の2台のマシンで同じ問題があります。Resharperはインストールされていません。ここでのデレンマは、問題なくビルドされても、名前空間とオブジェクトを「解決」できないため、インテリセンスが機能しないことです。本当に変。他の5台のマシンで完全に動作します。
リック2013

Team Foundation Serverでの未解決の競合もこの問題の原因となる可能性があります。最新バージョンを取得すると、それが成功し、すべてのファイルが更新されたと報告される場合がありますが、常にそうであるとは限りません。[チームエクスプローラー]> [保留中の変更]> [アクション]ドロップダウン> [競合の解決]に移動して[すべての競合を取得]をクリックすると、解決する必要のある未解決の競合があるかどうかが表示されます。
user2310967 14年

回答:


325

ReSharperがある場合は、ReSharperキャッシュを空にしてみてください。

メニューで、ReSharper>オプション>環境>一般>キャッシュのクリア

そして、ReSharperを無効にして再度有効にする:

メニューで、[ツール]> [オプション]> [ReSharper]> [一般]> [一時停止/復元]


182

私の場合、Resharperのキャッシュをクリアしても問題は解決せず、サスペンド/復元を試み、JetBrainsのWebサイトから最新のダウンロードを使用してResharperを修復しようとしましたが、どちらも役に立ちませんでした。これは、VSを閉じたり、再度開いたり、マシンを再起動し、繰り返し、ビルド/再構築、およびそれらの組み合わせを試みた後です。

興味深いことに、Resharperを一時停止することで、VS の2回目の再起動後に問題が解決したように見えましたが、Resharperを有効にした後で戻った<-このシーケンスを2〜3回実行して、パターンを確認しました。

とにかく、私がこの記事を見つけたとき、私はまだ問題を抱えていました:

そこで、ソリューションと同じフォルダーレベルにある非表示の.SUOファイルを削除しまし

注-Visual Studio 2015の場合、.SUOファイルは.vs / [solution_name] / v14隠しフォルダーにあります。


7
Resharperの手順も私にはうまくいきませんでしたが、これはうまくいきました。ありがとう!
Justin Morgan

4
Visual Studioを再起動した後、あなたのソリューションは私のためにそれを修正しました。ありがとう!:)
Moulde

1
VS2015-ビルドできないプロジェクトが1つありましたが、発生するはずのエラーからわかりました。VSを閉じる必要はありませんでした。ソリューションを閉じ、.suoを削除して、ソリューションを再度開きます。問題が解決しました。
TTT

5
VS2019でも引き続き機能します。ありがとうございます。そこにある.suoファイルは.vs / [solution_name] / v16にあります。
Michael Armes

3
VS2019、私は.vsディレクトリを核にしました、それは次のビルドで再作成されました-偽のエラーはなくなりました。
Loren Pechtel

92

tldr; 問題のプロジェクトをアンロードして再ロードします。

これが私に起こったとき、私は(以前は)VSを閉じて再度開いてみます。それはおそらく半分の時間でうまくいきました。機能しない場合は、ソリューションを閉じ、.suoファイル(または.vsフォルダー全体)を削除して、ソリューションを再度開きます。これまでのところ、これは常にうまくいきました(過去6か月で10回以上)。ただし、ビルドモードやスタートアッププロジェクトなどの一部がリセットされるため、少し面倒です。

通常、問題が発生しているのは1つのプロジェクトだけなので、そのプロジェクトをアンロードしてリロードしてみたところ、うまくいきました。私のサンプルサイズは1つだけですが、他の2つのオプションよりもはるかに高速なので、試してみる価値があります。これは.suoファイルに書き込み、問題の原因となった破損部分をおそらく修正するので、これはうまくいくと思います。

注:これはVS 2019、2017、2015で機能するようです。


7
そのプロジェクトをアンロードしてリロードしてみたところ、うまくいきました。」私は貨物カルトに貢献しているように感じますが、結局、ロードとアンロード(間にランダムなクリーンアップとビルドを行います)を行い、最終的にはゴールドに打撃を与えました。とても奇妙。これは、VS 2017である
ラフィン

2
@ruffin-へへ。この質問へのすべての答えは「カーゴカルト」であると思いますが、私は私が最も速く、最も邪魔にならないと思います。;)
TTT

1
ReSharperのとVS 2017コミュニティに私のためにそれをやったフォルダ全体.vsを削除
ペドロ・マルティンスTimóteoダ・コスタ

3
VS 2019 CEでもアンロードとリロードが機能しました
simonlchilds

1
VS 2019で.vsフォルダーを削除すると、ReSharperがなく、単純なVSでうまくいきました。ありがとう!!!
ドイツのラトーレ

39

ソリューションをクリーンアップし、VSを閉じて、再度オープンし、ソリューションをビルドしました。赤い未解決の行がクリーンアップされ、ビルドは成功しました。


2
これらの手順は、正確に、私のために働いた。単に掃除して構築するだけではうまくいきません。
JasonCoder 2016

2
オフにしてから再びオンにしてください...今までにそれを試すことを知っていると思います。+1
iandisme 2016

これで問題は解決しました!そもそも何が原因だったのか!?
DiligentKarma 2016年

2
何も思いつきません。Visual Studioは、私が使用した中で最も不安定なIDEであることがわかりました。ハングし続け、頻繁にクラッシュし、時々奇妙なエラーが表示されます。正直に言って問題を数えるのをやめました。
ピクセル

これらの正確な手順に従っても、私にとっては問題が解決しませんでした(VS2015)。
Tim

29

Visual Studio 2017でGitを使用していて、依存するコードが変更されているブランチを切り替えるときに頻繁に発生することがわかりました。プロジェクトは正常にビルドされますが、エラーリストにはエラーが残ります。

これらのエラーは、ライブラリ参照が存在する場合でも、多くの場合、名前空間の問題と参照の欠落です。

解決する:

  • Visual Studioを閉じる
  • {sln-root} .vs \ SlnName \ v15.suoファイルを削除します(非表示)
  • Visual Studioを再起動します。

このヒントをありがとう。これにより、VS 2017(更新なし)の問題が解決されました。FWIW、これは、リモートでリベースされていたブランチを削除してチェックアウトした後に発生しました。
Mike Atkisson、2018年

1
この解決策では問題は解決しませんでしたが、コミットされていない変更でブランチを切り替えた後にこの問題が始まったと思います(別のブランチに適用する必要があったため)
CularBytes

これはまさに私の問題です。私の救世主、ありがとう
ディントラン

@CularBytesブランチを切り替える前に変更を隠しておく価値があるかもしれません。git stash、switchブランチ、git stash pop
Rebecca

18

6つのオプションをすべて試しましたが、うまくいきませんでした。以下の解決策は私の問題を解決しました。

VSを閉じます。ソリューションファイルの横にある非表示の「.vs」フォルダーを削除します。VSを再起動してソリューションをロードします。


この問題には新しい原因があるようで、これがこの問題の新しい解決策です。私もあなたの数日でこれを投稿した他の3人が突然この問題に遭遇したことを知っています。
Gerrie Pretorius 2018年

モシと同じことをしなければならなかった。VS 2019から実行した場合、.suoファイルのようには見えません。この問題は今までに修正されていると考えられていました... * grumble grumble grumble *
Mike Loux

vs2017で私にとってもフォーク
Nejc Galof

1
@MikeLoux Neoliskからの回答を見ると、.suoファイルが.vsフォルダーにあることが指摘されているので、フォルダー全体ではなく、1つのファイルを削除するだけです。これも特に満足できるものではありません!
Avrohom Yisroel

Avrohom-その最後のビットはそれを完全に要約します。いいえ、まったく満足のいくものではありません。そして、はい、私は最終的にあなたとNeoliskが指摘したファイルを見つけて、それが何度か発生したことを確認しました(それほど頻繁ではありませんが、ありがたいことに)。だから...それは何かだと思います。:-)
マイクルー

12

Intellisenseが1つのプロジェクトの存在を認識しないように見える(「このタイプが見つかりません」、「この名前空間は存在しない」などのエラーがたくさんある)という問題がありました。

すべての参照プロジェクトでプロジェクト参照を削除して再度追加すると、問題は解決しますが、根本的な原因は、問題のプロジェクトの.projファイルを編集することで修正できます。

「不足している」プロジェクトの.csprojファイルの上部近くに要素があります。

<ProjectGuid>{GUID}</ProjectGuid>

すべての参照プロジェクトで、.csprojファイルはプロジェクト参照でした。

<ProjectReference Include="..\OffendingProject\OffendingProject.csproj">
  <Project>{ANOTHER-GUID}</Project>
  <Name>Offending Project</Name>
</ProjectReference>

参照しているGUIDがプロジェクトのGUIDと一致しませんでした。{GUID}上記{ANOTHER-GUID}をすべての参照プロジェクトを経由せずに問題を修正して置き換えます。


nugetパッケージでしたが、これは私にはうまくいきました。パスが.csprojファイルの相対パスのままであることを確認しました(文字どおりTFS DIFFで何も変更されていません)が、存在しないエラーについてVS2017 STFUを作成しました。
BrainSlugs83

1
単一のプロジェクト参照を再度追加するだけで、すべての問題の参照が更新されました
robaudas

他の解決策はどれも私のために機能しませんでした、これはトリックをしました:)
Pablo CarrascoHernández19年

12

ここに人気のある回答のコレクションがあります。それがあなたを助けたなら、回答のOPを賛成してください:

オプション1:クリーン、ビルド、およびリフレッシュ(@Mike Fuchsオプション)

@マイクフックスは述べ、次の操作を試してください。

メニューで、ビルド>ソリューションのクリーンアップ

そして

メニューで、ビルド>ソリューションのビルド

問題のプロジェクトを選択し、更新ボタンをクリックします。

更新ボタン

オプション2:クリーン、クローズ、再起動、ビルド(@Pixelオプション)

以下のよう@Pixelは述べ、次の一連の操作を試してください。

  1. 溶液をきれいにする
  2. Visual Studioを閉じる
  3. Visual Studioを開く
  4. ソリューションを構築する

オプション3:ReSharperキャッシュをクリアする(@GammaOmegaオプション)

ReSharperがある場合は、ReSharperキャッシュを空にしてみてください。

メニューで、ReSharper>オプション>環境>一般>キャッシュのクリア

そして、ReSharperを無効にして再度有効にする:

メニューで、[ツール]> [オプション]> [ReSharper]> [一般]> [一時停止/復元]

オプション4:.suoファイルを削除する(@Neoliskオプション)

以下のよう@Neoliskが言及した、.suoファイルを削除すると、あなたの問題を解決する可能性があります。Visual Studio 2015の場合、ファイルは次の場所にあります。

[ソリューションのパス] /。vs / [ソリューション名] /v14/.suo

そしてVisual Studio 2017の場合:

[ソリューションのパス] /。vs / [ソリューション名] /v15/.suo

.vsディレクトリが非表示になっていることに注意してください。

オプション5:プロジェクトのアンロードと再ロード(@TTTオプション)

以下のよう@TTTが述べたように、問題の原因となるプロジェクトをアンロードしてみてください。

ソリューションエクスプローラーで、プロジェクト(プロジェクトのアンロード)を右クリックします。

そしてそれを再ロードする

ソリューションエクスプローラーで、プロジェクトを右クリックし、[プロジェクトの再読み込み]をクリックします。

オプション6:Microsoft.CSharp参照を削除して追加する(@Guilhermeオプション)

以下のよう@Guilhermeが述べたように、削除して問題を抱えているプロジェクトから「Microsoft.CSharp」への参照を追加してみてください。

ソリューションエクスプローラーで、プロジェクトを展開し、[参照]を展開して、[Microsoft.CSharp]を右クリックし、[削除]をクリックします。

次に、[参照設定]> [参照の追加]を右クリックし、リストから[Microsoft.CSharp]を選択して、[OK]をクリックします。


オプション6はそれを行いました。@Guilhermeリンクをクリックして賛成投票をしなければなりませんでした。
gbarry

上記のどれもうまく
いかず

10

隠しファイルのパスを削除します= your solution \ .vs \ your solution Name \ v15 \ .suo


1
私も働いた。VS2019。WPFプロジェクトは、存在しないコントロールに関するエラーを表示し続けましたが、正常に実行されました。
Flemming Bonde Kentved


5

gitブランチを切り替えると、Visual Studio(2017)が2番目のブランチに追加された一部のファイルのタイプを認識しない場合があることに気付きました。.vsフォルダーを削除すると解決しますが、ワークスペースの設定もすべて破棄されます。このトリックは私にはうまくいくようです:

  1. ソリューションエクスプローラー->認識されないクラスが含まれているファイルを見つけます。
  2. ソリューションエクスプローラーの上部にある[すべてのファイルを表示]をクリックします。
  3. ファイルを右クリック->プロジェクトから除外します。
  4. もう一度ファイルを右クリックして、[プロジェクトに含める]をクリックします。

これにより、Intellisenseはブランチを切り替えるときに見逃したファイルを解析します。



3

おそらくあなたはあなたのインテリセンスキャッシュをリセットしようとしています。Visual Studio 2012で、多くの部分クラス定義を持つ大規模なプロジェクトで作業しているときに、同様の問題が発生しました。パーシャルを減らすことで問題が部分的に解決され、インテリセンスキャッシュもクリアされます-しばらくの間。


3

ときどき、すべてのプロジェクトを実行し、「bin」フォルダーと「obj」フォルダーを手動で削除して、カスタムクリーンを実行する必要があります。Visual Studioでそれらを表示するには、各プロジェクトの隠しファイルとフォルダーを有効にする必要があります。これが完了したら、ソリューションを再構築します。


3

.vsフォルダを削除すると問題が解決しました。

ただし、VSでのソリューションの現在の設定リセットされます。同様に、ソリューションでアンロードしたプロジェクトが再ロードされ、VSを再起動すると、ピン留めされて開かれているすべてのドキュメントも閉じられました。


2

0-ソリューションを右クリックしてソリューションをクリーンアップ

1-VSを閉じる

2-プロジェクトの.suoファイルを削除する

3-オープンVS

4-ソリューションの構築


2

私の同僚が本日この問題を経験しました。ここでは多くの推奨事項を試しましたが、以下で説明する解決策を除いて何も機能しませんでした。

問題:

プロジェクトは正常にビルドされますが、Intellisenseは特定のタイプを認識できず、特定のusingステートメントを無効としてマークします。

解決:

'ソリューションプラットフォーム'を変更します(VS 2017では、これは[ソリューション構成]ドロップダウンの隣のドロップダウンであり、x86、x64、AnyCPU、混合プラットフォームなどの値があります)をAnyCPUに変更します。ます。

プロジェクトのプラットフォームは異なる場合がありますが、一部の参照はすべてのプラットフォームに有効ではないようです。


1

私の特定のケースでは、メインのブランチにマージされた別の開発者がサービス参照でした。構文の強調表示が生成されたサービスクラスを解決できず、ソースにすべて赤の下線が引かれたことを除いて、これは完全に問題ありませんでした。クリーニング、再構築、再起動は何もしませんでした。

私がしなければならなかったのは、サービスリファレンスを更新することだけでした。ソースコードや生成されたファイルに変更はありません。


1

プロジェクトにファイルを追加したgit commitを元に戻したところ、この問題に遭遇しました。

各ステップの間にVSを閉じても、プロジェクトのクリーンアップと再ビルドは機能しませんでした。

最終的に機能したのは、ファイルの名前を別の名前に変更し、再度変更することでした。:facepalm:


1

リストされたすべてのオプションを試した後、私はこれが発生する可能性があるさらに別の理由を発見しました。誰かがソースコードをzipとして送信したか、zipをダウンロードした場合、Windowsがすべてのファイルをブロックしている可能性があります。これを解決する2つの方法:

方法1:

元のZipファイルを右クリック-> [ブロック解除]をチェック-> [適用]をクリック

方法2:

それがオプションではない場合は、ソリューションフォルダー内のすべてのファイルのプロパティを開くのではなく、Power Shellを開き、以下を使用して再帰的にブロックを解除します。

Get-ChildItem -Path 'C:\<ROOT FOLDER OF SOLUTION>\' -Recurse | Unblock-File

1
  1. 最初にソリューションを閉じます。
  2. 次に、ソリューションキャッシュファイルを削除します(場所C:\ Users \ Documents \ Visual Studio \ Backup Files / project cache file)
  3. 次に.suoファイルを削除します
  4. 次に、ソリューションを開いてビルドします。

私はあなたの問題を解決したいと思います


1

仕事でこの問題を抱えていました(VS2017を実行)。ここですべての答えを試しました。喜びがない。

プロジェクトは問題なくビルドされますが、名前空間/タイプが見つからないという不満がありました。あちこちで赤い波線。エラーリストウィンドウにたくさんのエラーがあります。

私のソリューションには3つのプロジェクトが含まれていました。

いずれかのプロジェクトのNuGetライブラリ参照のうち3つが不適切であることを発見しました。参照されているライブラリのバージョンとビンゴを統合しました。

これが誰かを助けることを願っています。

ブレット。



0

ソリューションをクリーンアップしただけでエラーが消えてしまうことがありますが、最終的にしばらくしてから、または次のビルドでエラーが発生する場合があります。


0

ソリューションが正常にビルドされたにもかかわらず、赤い波線を示したVisual Studioによって認識されない単一のタイプでこの問題に遭遇しました。ソリューションエクスプローラーで、ファイルの左側にクラスとプロパティが展開されていることを示す展開矢印がないことに気付きました。

修正は、ファイルをプロジェクトから除外して保存/ビルドし、予期したエラーを生成してから、ファイルをプロジェクトに含めて保存してビルドすることでした。

これらの手順を実行した後、Visual Studioは私のタイプを再び認識し始めました。gitのdiffを見ると、問題は<Compile Include="..." />、.csprojファイルの行で行末が一致していないことが原因であると思われます。


0

私の場合、vsはプロジェクトのプロパティ>参照にインポートされた名前空間を保持していませんでした

もう一度追加/チェックしようとすると、失敗してvsエラーが発生し、プロジェクトを保存するとクラッシュしました。すべての標準のインポートされた名前空間(system.dataなど...)を再び開いたときに、すべてチェックされ、エラーなしですべてを認識していました


0

TL; DR: Visual Studioのクリーンな再インストールを実行します

数時間を費やした後も、Visual Studio 2017で修正できませんでした。その後、Visual Studio 2019 PREVIEWをインストールすると、突然、IntelliSenseによってSTLクラスのメンバーが再び表示されます(これはVisual Studio 2017ではできません) )。

したがって、私の推測では、Visual Studio自体に問題がある可能性があります(おそらくキャッシュディレクトリにあるか、一般にPC上の特定のソリューションに直接関連しない何か)。これは、クリーンで完全なreによって解決できます-Visual Studioのインストール。私は知っている、これは愚かな「解決策」ですが、私の場合、新しいVisual Studio(2019)のインストールのみが効果をもたらしました。

すでに述べたように、私の場合、影響を受けるのはSTLクラスだけです。IntelliSenseは奇妙なことにメンバーを表示しません。プリコンパイルされたヘッダーと関係があるのではないかと思いました。どこかで、STLとプロジェクトを同じドライブに配置し、それらを同じドライブに配置することで問題を解決できると読みました。しかし、これらのルートはどれも成功に至りませんでした。


0

これは、参照されているプロジェクトが、それを使用しようとしているプロジェクトよりも高いバージョンのフレームワークをターゲットにしている場合に発生する可能性があることを発見しました。これが問題であるかどうかは、出力ウィンドウに移動して、次のようなものを探すことで確認できます。

プライマリ参照「my_reference」は「.NETFramework、Version = v4.7.2」フレームワークに対してビルドされたため、解決できませんでした。これは、現在対象となっているフレームワーク「.NETFramework、Version = v4.7」よりも新しいバージョンです。

解決策は、いずれかのプロジェクトのターゲットフレームワークを変更することです。


0

VS2019での私の症状は、いくつかのエラーでビルドすることでした。次に、エラーを修正します。出力ウィンドウに示すように、ビルドは機能します。しかし、[エラー]ウィンドウには古いエラーがまだ表示されていました。うまく実行できました。VS2019を終了して再活動化することで問題は解決しましたが、しばらくの間だけでした。これはバージョン16.4.3で発生し始めました

この解決策は私にとってうまくいくようです:

[ツール]-> [オプション]-> [プロジェクトとソリューション]-> [全般]-> [並列プロジェクトの初期化を許可]をオフにします。

私はこの修正がここのコメントにずっと埋もれているのを見つけました:https : //developercommunity.visualstudio.com/content/problem/483450/vs-2019-intellisense-reports-compile-errors-when-r.html


-1

下線が引かれた要素の上にマウスを置いてみてください。通常は何が問題なのかを教えてくれるはずです。すべてのエラー/警告のリストを表示するには、[表示] => [エラーリスト]に移動します。IDEの下部にテーブルが開き、すべてのエラー/警告がリストされます。


ランダムクラスの下に波線がありますが、エラーリストにエラーは表示されません。さらに、プロジェクトは完璧に構築されます。Intellisense関連のようです。
GammaOmega 2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.