Yansıma (Method.Invoke) kullanarak .NET işlevini çağırıyorum. Bu yöntemde bir hata oluşursa ve istisna kaldırılırsa, hata ayıklayıcı gerçek kodu göstermez, ancak Invoke() çağrısında durur. InnerException'dan istisna bilgilerini alabilirim, ancak bu durum, mevcut olan calltack ile normal hata ayıklamaya kıyasla çok sakıncalı. Method.Invoke kullanılarak çağrılan yöntemler, normal işlev çağrıları gibi hata ayıklanabilir mi?Hata ayıklama .NET'de çağrılan işlev
cevap
Tick()
iç Timer ve çağrı yöntemini yaratmaktır
... cevabım mantıklı değil sanırım Zamanlayıcı -> Kene içinde yazık ki
Vurmayı sevdiğiniz şey "Just My Code" özelliğidir. Hata ayıklayıcı, varsayılan olarak geliştiricinin yazdığı kabul edilen kodda hata ayıklamayı sınırlar. Bu, bir WPF veya WinForms lansmanında hata ayıklamada mevcut olabilecek çok fazla gürültüyü azaltır.
Özel durum yardımcısı gibi öğelerin tüm kodlar için çalıştırılabilmesi için, Yalnızca Kodum'u devre dışı bırakmanız gerekir.
- Araçlar -> Seçenekler
- Debugger
- işaretini kaldırın "Enable Just My Kod hata ayıklama" Bütün bunlardan
ayrıca çağrılan alır yöntem haline böyle bir şey koyabilirsiniz, başarısız: temelde "programlama yoluyla" orada bir kesme noktası neden olacaktır
#if DEBUG
System.Diagnostics.Debugger.Break();
#endif
.
Ayrıca yaparak onu biraz daha iyi yapabilir:
if(Debugger.IsAttached)
Debugger.Break();
Yani aslında ayıklayıcısında bunu çalıştırıyorsanız, yalnızca kıracağını.
Düzenleme: bunu düzenlemek için kodu varsa
2 düşünce, o zaman muhtemelen sadece VisualStudio aracılığıyla orada düzenli kesme noktası sopa olabilir. > Method.Invoke aracılığıyla çağrı fonksiyonu - -> fonksiyon kurulumları
GUI kodu: Özür :)
Cevabınız mükemmel bir anlam ifade ediyor, @ @ JaredPar'ın cevabı hakkındaki yorumumu da görün. Kesme noktalarının atlanması ve yönteminizin işe yaraması ile ilgili sorunlarla karşılaşıyordum. – ajeh
- 1. Firefox'taki hata ayıklama hata ayıklama
- 2. Hemen çağrılan işlev ifadesi, ikinci olarak çalıştırılmıyor
- 3. C programlama, hata: çağrılan nesne bir işlev veya işlev işaretçisi değil
- 4. ASP.Net Core, bir hata ayıklayıcıda hata ayıklama değil hata ayıklama
- 5. Hata ayıklama üzerinde uygulama, hata ayıklama sırasında değil
- 6. Eclipse kısayolu "hata ayıklama son hata ayıklama yapılandırması" (F11 değil)
- 7. Eclipse Java Hata ayıklama dosyaları ile hata ayıklama
- 8. Hata ayıklama, sürüm
- 9. Hata ayıklama Ember.js'den chrome
- 10. Win32 Hata Ayıklama Makroları
- 11. Hata ayıklama Java yöntemi
- 12. Xcode C++ hata ayıklama
- 13. Hata ayıklama döngüleri
- 14. Hata ayıklama 403'ler?
- 15. Hata ayıklama metaprogramları
- 16. Hata ayıklama outofmemoryexception
- 17. ASP.NET'te hata ayıklama ASP.NET
- 18. Hata ayıklama getResource *
- 19. PyCharm JavaScript Hata ayıklama
- 20. Hata ayıklama TargetInvocationException
- 21. ffmpeg ecplise hata ayıklama
- 22. XCode Hata Ayıklama Kısayolları
- 23. Nasıl hata ayıklama tabindex
- 24. IE8 XmlHttpRequest Hata ayıklama
- 25. Hata ayıklama gist-vim
- 26. Mobil tarayıcılarda hata ayıklama?
- 27. IntelliJ'teki hata ayıklama görevi
- 28. Not: Hata ayıklama şablonu
- 29. Hata ayıklama Pyparsing Dilbilgisi
- 30. Makale hata ayıklama aracı
Maalesef "Sadece Benim Kodunu Etkinleştir'i" çok güzel (ve uygun bazı durumlarda) değil zaten kontrolsüz oldu fonksiyon gövdesi
yoktur. Ama hem arayan hem de callee aslında benim kodum olduğu gibi alakasız görünüyor. – John
@John, bu garip. Bir sonraki adım, tüm istisna türleri için "mola atmak" ı açmak ve beklediğim yeri terk edip etmediğimi görmek. Bu sizin sorununuzu çözmeyecek, ancak bizi bir adım daha ileriye taşıyacak. – JaredPar
Bu çok garip, "mola atma" yı açtıktan sonra, yüklenemeyen XmlSerializer derlemesi için FileNotFound istisnası alıyorum. "Mola atmak" olmadan, her şey iyi çalışıyor. – John