Studio visual mengkompilasi dengan baik tetapi masih menunjukkan garis merah

96

Saya menggunakan VS 2012 dan semuanya bekerja dengan baik sampai saya mulai mengamati beberapa perilaku lucu. Ketika saya membuka kode saya, itu menunjukkan Garis Bawah merah yang biasanya kita lihat ketika ada kesalahan dalam kode kita. Anehnya, semua kode terkompilasi dengan baik. Saya telah melakukan pengamatan berikut ini yang tidak normal sama sekali.

  1. Garis Bawah Merah pada kode
  2. Saat membersihkan atau membangun solusi tidak ada kesalahan.
  3. Garis bawah merah menghilang selama beberapa waktu setelah saya membangun / membersihkan solusi tetapi pada akhirnya kembali.
  4. Karena ini akal sehat saya berhenti bekerja.
  5. Saya tidak dapat mengklik kanan ke komponen mana pun dan membuka definisinya.

Ada ide?

Kalah
sumber
Kode apa yang menunjukkan garis bawah? Bisakah Anda memberikan contoh?
matth
Apakah Anda mungkin menjalankan kode lama? Coba implementasi kecil yang menunjukkan sesuatu, jika tidak ada yang terjadi, Anda mungkin menjalankan kode lama.
Maksimal
Apakah Anda menjalankan Reshaper atau alat lain yang mungkin melakukan garis bawah?
AlG
Apakah ini di semua file kode? Itu terjadi pada saya sekali ketika saya membuka file yang bukan dari solusi saya, tidak dapat pergi ke definisi yang memberikannya kepada saya.
Pierre-Luc Pineault

Jawaban:

48

Hapus konten folder ASP.NET sementara dan kemudian bangun kembali. Ini akan berada di folder pengguna Anda (untuk IIS Express - \ AppData \ Local \ Temp \ Temporary ASP.NET Files ) atau direktori Windows (untuk IIS - C: \ Windows \ Microsoft.Net \ Framework \ vx.xx \ Berkas ASP.NET sementara )

Jalan di luar pikiran saya dan mungkin tidak benar

levelnis
sumber
Atau, jika ini hanya memengaruhi satu proyek / solusi dan Anda menggunakan git dengan pengabaian yang sesuai untuk file sementara, coba lakukan perubahan, hapus copy pekerjaan Anda, dan paksa checkout cabang Anda.
Kyle
3
bagaimana jika kesalahan ada di Visual studio untuk Mac? apa yang akan menjadi jalur untuk folder ini?
Hilang
1
Saya perlu menutup dan membuka VS setelahnya dan berhasil. Terima kasih
MusicAndCode
170

Visual Studio 2017:

Menutup Visual Studio dan menghapus .vsfolder yang terletak di direktori solusi berhasil untuk saya.

Folder ini memiliki hiddenatribut. Anda mungkin perlu mengubah pengaturan dalam opsi folder untuk menampilkan file tersembunyi.

VeganHunter
sumber
2
Untuk VS 2017, solusi ini berfungsi di tempat yang tidak dilakukan oleh yang lain di halaman ini (seperti membersihkan folder temp dan membersihkan / bin dan / obj). .Vs tidak "disembunyikan" di sistem saya seperti yang disebutkan (sedangkan misalnya folder .git saya, tentu saja, jadi saya bisa membedakannya).
secretwep
1
Saya mencoba menghapus file .suo tetapi file itu dibuat kembali ketika saya memulai ulang VS 2017
Amit Kulat
3
@AmitKulat Ya, file .suo adalah penyimpanan terstruktur yang dibuat oleh Visual Studio dan berisi banyak pengaturan. Karena beberapa bug itu berhenti bekerja dengan baik. Jadi, saat Anda menghapusnya, itu akan dibuat ulang dengan pengaturan default yang benar.
VeganHunter
4
"Tidak didukung ... Versi Visual Studio ini tidak dapat membuka proyek berikut ..." - munculan yang agak mendebarkan setelah menghapus direktori .vs. Tapi tampaknya jinak. Mengklik OK dan solusi tetap terbuka, setelah Laporan Migrasi. Ini mungkin masalah tidak terkait yang tidak aktif sampai .vs dihapus. Melaporkan di sini untuk anak cucu.
Bob Stein
3
Ini juga berfungsi untuk Visual Studio 2019 (Pratinjau. Menghapus folder .vs)
Albert Romkes
10

Baru saja mengalami masalah ini saat bekerja dengan solusi yang dibuat di Visual Studio 2012 tetapi berjalan pada 2013. Saya menutup Visual Studio, menghapus semua direktori \ bin dan \ obj dan masalah telah hilang.

Kevin Brydon
sumber
9

Bagi saya masalah ini diperbaiki ketika saya membongkar dan memuat ulang proyek lagi. Saya bekerja untuk saya, semoga berhasil juga untuk Anda :)

Skr
sumber
7

Saya tahu ini sudah tua tetapi jika orang menemukan utas ini seperti yang saya lakukan dari google. Saya mengalami masalah ini setelah menyelesaikan beberapa konflik dari svn. Solusinya memiliki beberapa proyek di dalamnya dan saya menyelesaikan beberapa konflik di beberapa proyek berbeda. Saya melakukan Build -> Clean Solution diikuti dengan Build -> Rebuild Solution dan semuanya baik-baik saja.

LUKA
sumber
7

Saya mengalami masalah ini dan ini terkait dengan ReSharper.

Langkah solusi untuk saya:

1) Nonaktifkan ReSharper

VisualStudio\Tools\Options\ReSharper Ultimate\General\Suspend Now

2) Bangun Solusi

(Ctrl-Shift-B)

3) Aktifkan ReSharper

VisualStudio\Tools\Options\ReSharper Ultimate\General\Resume Now

Steve

samneric
sumber
Bekerja untuk saya. Iya. ReSharper adalah masalahnya.
Muhammad Saqib
6

Apakah Anda memiliki plugin yang diinstal seperti resharper? Saya mengalami masalah dengan plugin yang buruk.

Coba jalankan studio visual dalam mode aman, untuk mencegah plugin berjalan.

devenv /Safemode
Marko
sumber
10
Saya menggunakan Resharper. Anda dapat menonaktifkan ReSharper dengan menggunakan tombol Suspend di menu Tools -> Options -> ReSharper. Kemudian Lanjutkan, itu membantu saya.
Oleg Kyrylchuk
5

Jika Anda menggunakan Resharper seperti saya, Anda dapat menghapus cache resharper dengan mengikuti tautan ini: https://www.jetbrains.com/help/resharper/Configuring_Caches_Location.html

To specify the location for caches

1. Open the Environment | General page of ReSharper options.
2. Use the Save solution caches in to select the location for cache files:
3. User local settings folder to store them in the following directory: %LOCALAPPDATA%\JetBrains\Transient
4.System TEMP folder to store them in the following directory: %TEMP%\ReSharperCache
5. Solution folder to store them in the root folder of the current solution
6. Custom folder to choose a custom location for ReSharper cache files.
7. Click Save to apply the modifications and let ReSharper choose where to save them, or save the modifications to a specific settings layer using the Save To drop-down list. For more information, see managing and sharing resharper settings.
8. Reopen your solution for the changes to take effect.
uzay95
sumber
Tombol 'Kosongkan cache' di Lingkungan | Halaman umum opsi ReSharper memecahkan masalah saya. Terima kasih atas petunjuknya!
nilsK
3

Di vs2013 saya memecahkan masalah ini dengan menghapus semua folder obj / bin saya di semua proyek. Masalahnya mungkin karena konfigurasi solusi yang telah saya hapus, tetapi belum dibersihkan dengan benar, karena melakukan Build -> Clean Solution tidak menghapus keluaran lama dari folder obj / bin.

Rocklan
sumber
1

Apa yang berhasil untuk saya adalah menghapus file indeks IntelliSense.

Berkas IntelliSense berada di direktori yang sama dengan solusi Anda.

Nama filenya adalah SolutionName.sdf

Hapus saja file ini, buka solusi Anda lagi, dan IntelliSense akan mulai membangun kembali file indeksnya. Setelah itu masalahnya akan hilang.

A. Franzen
sumber
1

Ini bekerja untuk saya di Visual Studio Enterprise 2017:

  1. Arahkan ke Alat> Opsi> Editor Teks> JavaSCript / TypeScript> Linting> Umum

  2. hapus pilihan "Aktifkan ESLint"

Gerald
sumber
1
Setelah berhari-hari melakukan penelitian, membongkar / memuat proyek dan banyak penghapusan folder .vs, ini adalah akar penyebab masalah saya, jadi saya menganggap ini jawaban yang valid. Semoga seseorang, di suatu tempat memberkatimu anakku.
Nandolcs
1

Saya telah mengalami ini juga dan dapat mengembalikan Visual Studio ke keadaan normal dengan melakukan hal berikut -

  1. Identifikasi proyek asal kode garis merah
  2. Hapus proyek garis merah dari referensi di mana itu digunakan (ProjectName \ Referensi - klik kanan, tambahkan referensi, hapus centang proyek garis merah)
  3. Bangun (Anda seharusnya mendapatkan kesalahan sekarang)
  4. Tambahkan kembali referensi proyek yang baru saja dihapus
  5. Bangun Lagi
  6. Garis merah harus dihilangkan dan proyek harus dibangun!
Brian Mikinski
sumber
1

Saya memiliki masalah yang sama dengan banyak garis merah di beberapa file sumber * cpp. Padahal kodenya tersusun dengan sempurna. Tidak ada solusi lain yang berhasil untuk saya.

Mengubah urutan #include baris file * .cpp-file dapat membuat garis merah menghilang - dan muncul kembali dengan urutan yang dipulihkan.

Lalu saya melihat file header disertakan dua kali dalam satu file * .cpp. Saya menghapus yang kedua dan - semuanya baik-baik saja.

Menyertakan file header dua kali dalam file * .cpp yang sama tampaknya tidak menjadi masalah bagi kompiler tetapi bagi bagian intellisense.

Hartwin
sumber
0

Mungkin sudah terlambat untuk menambahkan tetapi berharap itu masih dapat membantu seseorang. Saya mengalami masalah yang sama ketika saya melihat banyak coretan merah di beberapa file. Saya mencoba semua jawaban yang diusulkan di atas tetapi tidak ada yang berhasil. Saat saya mulai menelusuri kelas, struktur di file lain yang referensi file keluhannya, masalah menghilang. Tampaknya Intellisense tidak dapat menyelesaikan ketergantungannya sendiri karena suatu alasan.

irsis
sumber
3
Saya tidak melihat solusi dalam jawaban Anda. "Sepertinya Intellisense tidak dapat menyelesaikan ketergantungannya sendiri ..." - yang Anda katakan "melihat-lihat kelas, struktur" Anda membantu Intellisense menyelesaikan dependensi?
Sнаđошƒаӽ
4
@ Sнаđошƒаӽ Saya pikir itulah yang dia katakan.
Robert Columbia
@RobertColumbia Jangan tersinggung untuk OP, tapi saya pikir itu konyol.
Sнаđошƒаӽ
@ Sнаđошƒаӽ baik itulah yang dia katakan. Jika menurut Anda strategi itu tidak membantu, kurangi jawabannya.
Robert Columbia
@ Sнаđошƒаӽ Yah, saya sampai ke posting karena saya juga menghadapi masalah yang sama. Pertama saya mencoba semua jawaban sebelum saya memposting apa yang berhasil untuk saya Seperti orang lain juga menjawab berdasarkan pengalaman di sana. Saya tidak melihat ada yang salah dengan itu. Sebaliknya, itu mungkin membantu orang lain juga.
irsis
0

Bagi saya, saya pernah mengaktifkan pencatatan fusi untuk men-debug beberapa kesalahan ketergantungan perakitan (fuslogvw dari prompt CMD). Itu berbulan-bulan yang lalu dan saya mengalami waktu pembuatan yang jauh lebih lambat (5-7 menit) sejak saat itu. Saya juga lupa sepenuhnya bahwa saya telah membiarkannya diaktifkan. Log ini adalah leher botol saya dan menonaktifkannya telah membuat iterasi lebih cepat. Semoga ini bisa membantu seseorang!

Tabrock
sumber
0

Saya mengalami masalah ini dengan Visual Studio 2017 terbaru.
Juga versi debug dari program saya berjalan sangat lambat.

Saya menghapus file Solusi .slndan membuat yang baru.

juergen d
sumber
0

Langkah yang berhasil

  1. Buka Solusi dan lakukan re-build semua
  2. Tutup Solusi
  3. Buka solusi dan lakukan pembersihan
  4. Tutup solusi
  5. Buka solusi dan lakukan pembangunan ulang semua
  6. Tutup dan kemudian buka solusi dan hasilnya bagus. Ini bekerja untuk saya setiap saat

Hati-hati menghapus beberapa file pengaturan ini karena Anda akan kehilangan pengaturan debug yang disimpan dll dan itu mungkin melakukan lebih banyak kerusakan daripada yang Anda sadari

Hamish Redmond
sumber
0

Cukup segarkan proyek / solusi. Itu akan terselesaikan.

SJ Karthi
sumber
0

Dalam kasus saya dengan VS 2017, saya memiliki banyak "garis merah" yang ditunjukkan di bawah ini semua simbol yang ditentukan di perpustakaan pihak ketiga tetapi proyek saya sebenarnya dapat dibangun tanpa masalah. Saya telah mencoba semua solusi yang disarankan (seperti menghapus folder .VS, restart VS, dll.) Tetapi tidak ada yang berfungsi.

Akhirnya, saya memperbaikinya dan begini caranya: Saya membuka halaman properti proyek aplikasi saya, lalu pergi ke "C / C ++ -> General -> Additional Include Directories", yang merupakan tempat saya meletakkan semua jalur header perpustakaan pihak ketiga yang diperlukan. Saya menghapus semua jalur (tapi menyimpannya di suatu tempat), klik "Ok" untuk konfirmasi. Lalu saya kembali ke pengaturan yang sama, tempelkan jalur itu kembali, klik "Ok" untuk mengonfirmasi, lalu semua "garis merah" itu menghilang.

Hongkun Wang
sumber
0

Menemukan solusi ini:

  1. Tutup Visual Studio (pastikan devenv.exe tidak ada di Task Manager).
  2. Hapus %USERPROFILE%\AppData\Local\Microsoft\VisualStudio\xx\ComponentModelCachedirektori.
  3. Mulai ulang Visual Studio.
darrellh
sumber
0

Saya mengalami masalah ini selama berbulan-bulan dan akhirnya memperbaikinya. Menutup Visual Studio dan menghapus folder .vs yang terletak di direktori solusi TIDAK BEKERJA UNTUK SAYA.

Ada tag assemblyIdentity di web.config yang mereferensikan perpustakaan apa yang tidak ada di folder referensi saya. Saya menghapus tag ini, membersihkan, menutup, dan membuka kembali, dan masalah telah diperbaiki.

  1. Periksa setiap tag assemblyIdentity di web.config Anda dan periksa dengan folder referensi di explorer solusi
  2. Hapus semua tag assemblyIdentity, termasuk tag Assembly dependen induk untuk semua yang tidak terdaftar di folder referensi Anda.
  3. Solusi bersih
  4. Tutup dan buka kembali solusi
Benjo
sumber