可能重复:
获取变量或参数的名称
我希望能够将变量的名称作为字符串获取。
这可以通过使用无参数 lambda 表达式有效地实现。但是,这会产生性能开销,而且它不是内置功能。
.NET 4.5 CallerMemberNameAttribute
提供了将调用者的名称作为方法参数提供。这为我们提供了一种内置且更好(在某些情况下)的方法来针对特定情况执行此操作。
.NET 4.5 针对特定上下文在这方面提供了改进。现在还有更好的 ^ 方法将任何变量的名称作为字符串获取吗?
根据要求,这是我想要实现的一般用法示例:
//Assume 'myVariable' is a local variable, member variable, static member variable, constant, parameter or even a property.
string myVariableName = ...; //This should get the string name of myVariable
^更好,我的意思是更快,不需要反射,内置于 .NET 或更优雅,但最好是这些的组合。