Saya baru saja memutakhirkan dari Visual Studio 2013 hingga 2015 dan sekarang saya mengalami masalah dengan breakpoints.
Ini adalah hit atau miss di mana break point akan benar-benar bekerja dan jika saya menetapkan satu saat debugging saya mendapatkan kesalahan:
Breakpoint gagal diikat.
Bantuan apa pun akan dihargai. Saya siap untuk menyerah pada 2015 dan kembali.
Saya memiliki masalah yang sama.
Saya menyelesaikannya dengan menonaktifkan opsi "Optimize code" di tab Build Properties proyek.
sumber
Ini mungkin tampak sepele, tetapi setelah banyak headscratch dengan masalah yang sama seperti yang Anda sebutkan, saya menemukan bahwa build saya ditetapkan untuk "rilis" daripada "debug" ketika saya mencoba debugging .. membangun kembali solusi untuk "debug "Memperbaikinya, dan saya bisa mengatur breakpoint seperti biasa
sumber
Saya memiliki masalah serupa dengan breakpoint yang gagal untuk diikat, serta variabel lokal tertentu yang tidak dievaluasi di jendela Lokal. Yang akhirnya memperbaikinya adalah mengaktifkan opsi "Suppress JIT optimization on load module (Managed only)" di tab Options-> Debug-> General. Setelah saya atur bahwa itu bisa mengikat tanpa masalah.
sumber
Saya punya masalah ini. Saya menjalankan sesi profil kinerja yang memodifikasi
Web.config
file dengan pengaturan untuk monitor kinerja:Ini mematahkan kemampuan saya untuk berhenti di breakpoints. Ketika saya kembali ke Web.config asli (menghapus pengaturan Performance Profiler), breakpoints mulai bekerja lagi.
sumber
<add key="Microsoft.VisualStudio.Enterprise.AspNetHelper.VsInstrLocation" value="C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Team Tools\Performance Tools\vsinstr.exe"/>
Saya memiliki masalah yang sama kemarin. Saya menggunakan fitur "Solusi Bersih" dan itu membantu.
sumber
solusinya adalah dengan menonaktifkan optimasi desain.
Project Properties> Build> Advanced Compile Options> Enable Optimizations
sumber
Saya menjalankan kinerja pada solusi saya dan itu menambahkan ini ke web.config saya
yang
assemblyPostProcessorType
masalahnya, saya dihapus dan yang memecahkan masalah sayasumber
sumber
Saya tidak mengubah pengaturan 'mengoptimalkan', tetapi berdasarkan jawaban lain di sini, saya
Sejauh ini sudah diperbaiki untuk saya. Sepertinya memperbarui ke VS2015 Update 2 telah merusak beberapa hal di sistem saya.
sumber
Saya tahu ini adalah posting lama tetapi jika semua trik lain di atas tidak berfungsi untuk Anda, pastikan gambar yang Anda coba debug adalah terkini. Untuk beberapa alasan setelah menerbitkan dan mentransfer proyek .NET Core ke Raspberry Pi saya 'unzip' di RPi tidak menyalin dan menimpa beberapa DLL di direktori kerja. Ketika saya melampirkan debugger berpikir semuanya OK, beberapa breakpoints terkena, yang lain tidak dan beberapa lainnya memberi saya kesalahan "tidak dapat mengikat". Setelah saya menyelesaikan masalah unzip semua breakpoints dan simbol saya kembali. Saya harap ini membantu.
sumber
Saya menemukan kesalahan breakpoint yang mengikat hari ini. Dan saya sudah memecahkan masalah saya melakukan belows.
Jika semua konfigurasi debug Anda tidak benar, Anda tidak dapat memperbaiki masalah dengan melakukan seperti ini.
Mungkin solusi ini membantu seseorang.
sumber
VS breakpoint tidak dapat mengikat pada metode async.
Saya menginstal agen App Dynamics yang menyebabkan ini. Hapus itu dan Anda baik untuk pergi.
sumber
Saya memiliki masalah yang sama, tetapi tidak menyadari bahwa "Debug" telah berubah menjadi "Rilis" pada bilah alat debug (biasanya langsung di bawah menu). Jadi saya mengaturnya ke "Debug" itu berhasil.
sumber
Pembaruan baru untuk Microsoft Visual Studio 2015 Pembaruan 3 (KB3165756) telah memperbaiki masalah breakpoint untuk saya di mana saya mencoba memeriksa variabel lokal dalam kode C # yang tertanam dalam file cshtml dalam aplikasi Core ASP.NET.
sumber
LANGKAH 1, Singkirkan yang sudah jelas:
LANGKAH 2 Untuk proyek C ++:
Periksa properti proyek berikut:
Lakukan Langkah 1 Lagi
Anda dapat mencoba menambahkan __debugbreak (). Pernyataan ini harus masuk dalam file sumber Anda di mana Anda ingin istirahat.
LANGKAH 2 Untuk proyek C #:
Coba buka solusi Anda di komputer lain. Jika Anda dapat mengikat breakpoint pada mesin yang berbeda ini dapat berarti bahwa ada masalah dengan VS atau OS Anda.
LANGKAH 3, Pastikan VS Anda mutakhir:
Ada laporan tentang masalah seperti ini di VS2013 RTM serta VS2015 Update 1 dan Update2.
Dalam VS, buka Alat / Ekstensi & Pembaruan / Pembaruan / Pembaruan Produk dan lihat versi apa yang Anda jalankan. Jika diperlukan pembaruan akan muncul di sana.
LANGKAH 4, Pastikan OS Anda mutakhir:
Terakhir, jika Anda menjalankan OS Win 10, ada bug yang dilaporkan tentang masalah ini yang ada di build 14251. Ini diselesaikan di build 14257 (dan di atas).
sumber
Saya hanya mengalami masalah yang sama dan tidak ada jawaban di sini mengenai masalah yang saya hadapi. Tidak seperti dalam pertanyaan itu, saya tidak pernah menerima pesan yang mengatakan ada kegagalan untuk mengikat. Breakpoint tidak pernah mengenai. Semoga ini bermanfaat bagi seseorang di masa depan yang membenturkan kepalanya ke dinding dengan WCF.
TL / DR:
Dalam pesan SOAP ada catatan dengan data buruk menyebabkan breakpoint tidak terkena.
Cerita lengkap:
Saya memiliki layanan WCF berdasarkan WSDL dari tim lain. Bukan definisi saya, tidak ada kontrol atasnya ... Saya menerima pesan dari tim lain ini melalui layanan ini. Dalam kasus saya, saya menerima pesan, dapat mencatat pesan ke tabel log pesan di database (yang terjadi sebelum metode layanan saya dipanggil), metode layanan tampaknya dipanggil (mungkin tidak), dan server merespons dengan a 202 Diterima. Komunikasi berfungsi, kecuali tidak ada data yang disimpan ke database selama panggilan metode.
Karena layanan mengembalikan respons sukses, saya mengesampingkan http dan mengangkut masalah terkait.
Jadi saya menyalakan VS2015 untuk men-debug layanan. Pesan yang dipermasalahkan besar tetapi baik dalam batas-batas apa yang saya harapkan. Saya meletakkan breakpoint pada baris pertama metode layanan dan mengirim pesan besar, tetapi breakpoint tidak pernah memukul. Saya mencoba pesan yang lebih kecil yang saya tahu bekerja pada menjalankan contoh yang sama dan breakpoint baik-baik saja. Jadi semuanya dalam konfigurasi tampak baik-baik saja. Saya pikir mungkin ada sesuatu dalam ukuran pesan.
Saya mencoba semua yang saya bisa temukan - memastikan saya berada dalam konfigurasi debug, bersihkan dan bangun kembali, secara manual melampirkan debugger ke proses w3wp (yang sudah VS), menggunakan
Debugger.Break()
bukannya breakpoint, mengatur beberapa proyek startup, membongkar proyek pengujian saya sehingga proyek layanan adalah satu-satunya, memperbarui. NET, memulai kembali VS2015, me-reboot, beralih dari IIS Lokal ke IIS Express dan kembali, menciptakan kembali layanan dengan WSDL terbaru yang dijamin. Tidak ada yang penting. Breakpoint tidak pernah mengenai.Saya akhirnya harus membuang catatan dalam pesan besar satu per satu sampai saya menemukan satu catatan tunggal yang memiliki data buruk. Dalam kasus saya itu adalah satu catatan yang tidak memiliki nilai untuk 2 bidang DateTime. Ketika saya membuat pesan yang hanya memiliki satu catatan ini di dalamnya dan mengirimkannya, breakpoint tidak terkena. Ketika saya memberikan nilai untuk 2 bidang DateTime tersebut dan mengirim pesan (tetap) yang sama di breakpoint yang dipecat seperti yang diharapkan.
Saya memiliki setiap pengecualian CLR diaktifkan, tidak ada yang ditembakkan selain file .pbd yang hilang, yang tidak saya pedulikan. WCF dengan senang hati mengirimkan permintaan dengan catatan buruk. Saya tidak mengatakan bahwa WCF seharusnya tidak mengirimkannya berdasarkan kontrak, hanya saja catatan buruk itu menyebabkan breakpoint tidak terkena.
sumber
Saya harus memodifikasi file web.config untuk mengaktifkan debugging. Ubah ini:
untuk:
sumber
Bersihkan seluruh solusi sebelum mencoba solusi lainnya. Setelah mencoba hampir semua yang lain katakan di jawaban sebelumnya, dan memulai kembali visual studio beberapa kali, hanya membersihkan solusinya berhasil!
sumber
Saya mencoba semua yang disarankan di sini. Akhirnya, saya mengatur "Halaman Spesifik" di Project Properties -> Web ke URL awal lokal saya, halaman dan parameter permintaan. Melakukan pembersihan dan membangun kembali dalam mode debug dan itu mencapai breakpoint saya.
sumber
Meskipun ini adalah build yang jauh lebih baru (VS2017) saya punya masalah dengan proyek-proyek C #. Mencoba membersihkan, membangun kembali, memulai kembali studio visual, dll.
Apa yang diperbaiki adalah menutup Visual Studio dan menghapus folder .vs, yang merupakan folder tersembunyi yang terletak di direktori solusi. Menghapus folder .vs seharusnya tidak menimbulkan masalah bagi Anda, meskipun Anda harus mengatur ulang proyek startup Anda.
sumber
Dalam kasus saya, ada file web.config baru yang dibuat setelah saya gunakan
Profiler
. Memulihkan web.config ke versi sebelumnya, menyelesaikan masalah ini. Itu adalah aplikasi web VS2015 C #.sumber
Jika Anda menerbitkan cek aplikasi web Anda yang
Configuration
diatur keDebug
(secara default dalam konfigurasi debug diatur sedemikian rupa sehingga kode tidak dioptimalkan dan tabel simbol dibuat sepenuhnya).sumber
Aku melihat jawaban sebelumnya dan @ Will answear tetap masalah utama saya memiliki, yang lain bisa mengedit dan terus tapi mengambil melihat lebih dekat pada AssemblyInfo.cs mengajukan saya menemukan beberapa debugging fitur di mana dinonaktifkan.
Kemudian saya akhirnya menghapus atribut debug lama dan menambahkan yang saya ambil dari proyek lain
Namun saya merasa ini bukan cara terbaik untuk melakukannya.
sumber