Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Mendapatkan Nombor Baris Semasa dalam .NET?

Bagaimana untuk Mendapatkan Nombor Baris Semasa dalam .NET?

Barbara Streisand
Barbara Streisandasal
2024-12-31 21:00:15999semak imbas

How to Get the Current Line Number in .NET?

Mendapatkan semula Nombor Baris Semasa dalam .NET

Mendapatkan nombor baris kod yang sedang dilaksanakan boleh berguna untuk tujuan penyahpepijatan dan pengelogan. Artikel ini meneroka cara untuk menyelesaikan tugas ini dalam .NET.

Menggunakan Atribut Pemanggil

Dalam .NET 4.5 / C# 5 dan ke atas, atribut pemanggil menyediakan cara yang mudah untuk dapatkan maklumat talian dan ahli:

[CallerLineNumber] int lineNumber = 0;
[CallerMemberName] string caller = null;

// ...

MessageBox.Show(message + " at line " + lineNumber + " (" + caller + ")");

Ini akan memaparkan nombor talian dan nama kaedah panggilan kod, seperti:

Boo at line 39 (SomeMethodSomewhere)

Pilihan Lain

Sebelum .NET 4.5, pendekatan berikut biasanya digunakan:

StackTrace stackTrace = new StackTrace(true);
int lineNumber = stackTrace.GetFrame(0).GetFileLineNumber();
string caller = stackTrace.GetFrame(0).GetMethod().Name;

Walau bagaimanapun, kaedah ini memerlukan pengendalian indeks secara manual dan tidak boleh digunakan memihak kepada pemanggil pilihan atribut.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Nombor Baris Semasa dalam .NET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn