Exception’lar ile uğraşmak her zaman developer’lar için problemdir. Bu exception’a neyin sebep olduğunu bulmaya çalışmak sinir bozucu bile olabilir. Belki de çoğumuz artık refleks olarak bir exception’la karşılaştığı anda detaylara girip bir inner exception olup olmadığını kontrol ediyor. Visual Studio 2017 ile birlikte hayatımıza Exception Helper giriyor. Eski versiyonlarda kullanılan Exception Assistant ve Exception Dialog kaldırılıp yerine Exception Helper getirilmiş. Olur da bir şekilde memnun kalınmazsa diye ufak bir ayar ile Exception Helper’ı kapatmak mümkün bu arada. Yazının sonunda nasıl kapatılacağı ile ilgili de bilgi mevcut.
Eski versiyonlarda kullanılan modal hem okumayı zorlaştırıyor hem de kapatmadan koda dönmeyi imkansız hale getiriyordu. Yeni Exception Helper, kodda bir exception ile karşılaşıldığında ilgili satırın hemen sağ tarafına bir çarpı ikonu ekliyor ve bu çarpı ikonundan bir pop-down ile inerek ilgili satıra pinli bir şekilde kalıyor. Tabiyiki pini koparıp istenilen yere taşımak mümkün.
İtiraf etmeliyim ki okuması çok kolay. Anlık olarak ihtiyacım olan bilgiyi anında veriyor. Detaylarına ulaşmak istediğim zaman yine eskiden olduğu gibi View Details diyerek StackTrace’ine vs ulaşmak mümkün.
Bir diğer özellik ise, NullReferenceException tarafında yapılmış. Eski versiyonlarda bu hata alındığı zaman, çok şanslı değilsek, muhtemelen büyük çoğunluk gibi ilgili bloğun en üstüne bir breakpoint koyuyor ve adım adım ilerleterek hangi değişkenin null olduğunu arıyorduk. Exception Helper’a eklenen Null Reference Analysis artık bu işlemi bizim için yapıyor olacak. Null değeri bulduğu anda da bu ekran üzerinde gösteriyor olacak.
Bu özellik için ekleyeceğim bir diğer güzel özellik ise, artık Inner Exception’ların da detaya girmeden görülebiliyor olması.
Exception Helper Özelliğinin Kapatılıp Açılması
Son olarak bu özelliği kapatmak veya açmak isteyenler için de ufak bir bilgilendirme olsun. Tools > Options > Debugging ana başlığında yer alan “Use the new Exception Helper” seçeneği aktif veya deaktif hale getirilerek bu özellik açılıp kapatılabilir.