Bagikan melalui


Memeriksa pengecualian menggunakan Pembantu Pengecualian

Berurusan dengan pengecualian adalah masalah umum, apa pun teknologi atau tingkat keahlian Anda. Ini bisa menjadi pengalaman yang membuat frustrasi mencari tahu mengapa pengecualian menyebabkan masalah dalam kode Anda. Saat Anda menelusuri kesalahan pengecualian di Visual Studio, kami ingin mengurangi rasa frustrasi tersebut dengan memberi Anda informasi pengecualian yang relevan untuk membantu memperbaiki masalah Anda lebih cepat.

Pembantu Pengecualian

Berhenti pada pengecualian

Ketika debugger berhenti pada pengecualian, ikon kesalahan pengecualian muncul di sebelah kanan baris kode tersebut. Pembantu Pengecualian non-modal akan muncul di dekat ikon pengecualian.

Pembantu pengecualian di samping baris kode

Memeriksa informasi pengecualian

Anda dapat langsung membaca jenis pengecualian dan pesan pengecualian di Pembantu Pengecualian, dan apakah pengecualian dilemparkan atau tidak tertangani. Anda dapat memeriksa dan melihat properti objek Pengecualian dengan mengklik tautan Lihat Rincian.

Menganalisis referensi null

Mulai dari Visual Studio 2017, untuk kode .NET dan C/C++, saat Anda mencapai NullReferenceException atau AccessViolation, Anda akan melihat informasi analisis null di Pembantu Pengecualian. Analisis ditampilkan sebagai teks di bawah pesan pengecualian. Dalam ilustrasi di bawah ini, informasi ditampilkan sebagai "s null.".

pembantu pengecualian analisis null

Nota

Analisis referensi null dalam kode terkelola memerlukan .NET versi 4.6.2. Analisis null saat ini tidak didukung untuk Universal Windows Platform (UWP) dan aplikasi .NET Core lainnya. Ini hanya tersedia saat men-debug kode yang tidak memiliki pengoptimalan kode Just-In-Time (JIT).

Mengonfigurasi pengaturan pengecualian

Anda dapat mengonfigurasi debugger untuk menghentikan ketika pengecualian jenis saat ini dilemparkan dari bagian Pengaturan Pengecualian dari Pembantu Pengecualian. Jika debugger dijeda pada pengecualian yang dilemparkan, maka Anda dapat menggunakan kotak centang untuk menonaktifkan melanggar jenis pengecualian tersebut saat dilemparkan di masa mendatang. Jika Anda tidak ingin melanggar pengecualian khusus ini saat dilemparkan dalam modul khusus ini, centang kotak centang dengan nama modul di bawah Kecuali ketika dilemparkan dari: di jendela pengaturan pengecualian .

Memeriksa pengecualian dalam

Jika pengecualian memiliki pengecualian dalam (InnerException), Anda dapat melihatnya di Penolong Pengecualian. Jika ada beberapa pengecualian, Anda dapat menavigasi di antara mereka menggunakan panah kiri dan kanan yang diperlihatkan di atas tumpukan panggilan.

Pembantu pengecualian dengan pengecualian dalam

Memeriksa pengecualian yang dilempar ulang

Dalam kasus di mana pengecualian telah thrown, Penolong Pengecualian menunjukkan tumpukan panggilan dari pertama kali pengecualian terjadi. Jika pengecualian dilemparkan beberapa kali, hanya tumpukan panggilan dari pengecualian pertama yang ditampilkan.

Pembantu pengecualian dengan pengecualian yang dilempar ulang

Memeriksa pengecualian asinkron (.NET)

Dimulai dengan .NET 9, debugger Visual Studio secara otomatis berhenti saat metode Tugas asinkron melemparkan pengecualian dalam kode kerangka kerja .NET. Ini membuat lebih mudah untuk men-debug kode asinkron, terutama dalam ASP.NET, karena pengecualian sering dilemparkan ke batas asinkron.

Cuplikan layar pembantu Pengecualian dengan metode asinkron.

Menampilkan tumpukan panggilan

Mulai visual Studio 2022 versi 17.3, Anda dapat melihat bingkai tumpukan pengecualian di dalam jendela Call Stack. Untuk pengecualian asinkron, ini menambahkan kemampuan untuk memuat simbol dengan cepat atau menemukan sumber dan langsung masuk ke situs pengecualian. Bingkai tumpukan pengecualian di dalam jendela Call Stack menyediakan fitur tumpukan panggilan standar seperti navigasi otomatis, dengan cepat beralih bolak-balik antara bingkai, beban simbol, dan opsi dekompilasi untuk kembali ke kode sumber tempat pengecualian dilemparkan.

Alat bantu pengecualian dengan stack panggilan

Dapatkan bantuan AI

Jika Anda memiliki Copilot, Anda bisa mendapatkan bantuan AI saat mengatasi pengecualian. Cukup cari Ask CopilotCuplikan layar tombol TanyaKan Copilot. tombol. Dalam skenario ini, Copilot sudah mengetahui konteks untuk pertanyaan Anda, sehingga Anda tidak perlu memberikan konteks sendiri dalam obrolan. Untuk informasi lebih lanjut, lihat Debug dengan Copilot.

Berbagi sesi debug dengan Live Share

Dari Pembantu Pengecualian, Anda dapat memulai sesi Berbagi Langsung menggunakan tautan Mulai sesi Berbagi Langsung.... Siapa pun yang bergabung dengan sesi Berbagi Langsung dapat melihat Pembantu Pengecualian bersama dengan informasi debug lainnya.