5.2.1 CallerMemberName的使用
CallerMemberName是C#中的一个特性,用于自动获取调用方法或属性的名称。它是C# 5.0引入的一个功能。
CallerMemberName特性可以应用于方法的参数,使其在调用时自动填充调用者的名称,而无需显式传递信息。
一、举例如下:
调用work函数时,即使work()不填任何参数,它也会自动把调用者的名字填充到参数中。
可以看到:
1). 构造函数调用时,自动使用 '.ctor'.
2). 普通函数调用时,自动使用‘普通函数的名称’
3). 属性的set调用时,自动使用‘属性的名称’
public void Work([CallerMemberName] string memberName = "")
{
Console.WriteLine("CallerMemberName: " + memberName);
}
public MainWindow()
{
InitializeComponent();
Work(); //输出:CallerMemberName: .ctor
Playing(); //输出:CallerMemberName: Playing
this.UserName