Mendapatkan Jejak Tindanan dalam .NET: Panduan Komprehensif
Dalam banyak senario, adalah penting untuk mendapatkan maklumat surih tindanan, walaupun dalam ketiadaan pengecualian. Ini bermanfaat untuk menyahpepijat dan memahami aliran pelaksanaan.
Memperkenalkan System.Diagnostics.StackTrace
Dalam .NET, ruang nama System.Diagnostics menyediakan alat yang berkuasa untuk menganalisis jejak timbunan. Untuk mendapatkan semula surih tindanan semasa, nyatakan kelas StackTrace seperti berikut:
System.Diagnostics.StackTrace t = new System.Diagnostics.StackTrace();
Kelas StackTrace mendedahkan banyak sifat dan kaedah yang memberikan maklumat terperinci tentang tindanan panggilan semasa.
Melog Jejak Tindanan
Untuk melog jejak tindanan, anda boleh gunakan kaedah GetFrame untuk mendapatkan objek StackFrame, yang mewakili bingkai tertentu dalam tindanan.
StackFrame frame = t.GetFrame(0); Console.WriteLine("Current Stack Trace:"); Console.WriteLine("\tMethod: {0}", frame.GetMethod()); Console.WriteLine("\tLine Number: {0}", frame.GetFileLineNumber());
Pendekatan Alternatif
Sebagai alternatif, anda boleh mempertimbangkan untuk memanfaatkan rangka kerja pembalakan seperti NLog atau Perpustakaan Perusahaan. Rangka kerja ini menyediakan keupayaan pengelogan yang komprehensif, termasuk menangkap surih tindanan.
// NLog example var logger = LogManager.GetCurrentClassLogger(); logger.Debug("Stack Trace:\n{0}", t.ToString());
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Dapatkan Jejak Tindanan dalam Aplikasi .NET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!