thể trùng lặp:
Can you use reflection to find the name of the currently executing method?
C# how to get the name of the current method from codeLàm thế nào để có được tên của chức năng hiện tại?
Ví dụ:
void foo() {
Console.Write(__MYNAME__);
}
in: foo
i T có thể làm điều đó trong C#?
Trong Net 4.5, bạn có thể sử dụng CallerMemberNameAttribute để có được tên của người gọi. Xem https://msdn.microsoft.com/en-us/library/system.runtime.compilerservices.callermembernameattribute(v=vs.110).aspx ... Sau đó bạn có thể quấn phần thân của hàm của bạn vào một hàm ẩn danh như trong ([CallerMemberName] string functionName = "") => {}. Các vấn đề với việc sử dụng phương pháp phản xạ như trong câu trả lời được chấp nhận là (1) chức năng có thể được gạch chân, và/hoặc (2) tên hàm có thể bị xáo trộn nếu nó không công khai và mã bị che khuất. – GreatAndPowerfulOz