【发布时间】:2012-03-04 02:26:02
【问题描述】:
如何获取执行属性的属性名称。如果属性使用“return”,那么 MethodBase.GetCurrentMethod().Name 返回属性的名称。但是当我使用“yield return”时 MethodBase.GetCurrentMethod().Name 返回“MoveNext”。使用 yield return 时如何获取执行属性名称?
示例代码
class Program
{
static void Main(string[] args)
{
var x = myProgram.Something;
Console.ReadLine();
}
}
public class myProgram
{
public static IEnumerable<string> Something
{
get
{
string var = MethodBase.GetCurrentMethod().Name;
for (int i = 0; i < 5; i++)
{
yield return var;
}
}
}
}
【问题讨论】:
-
用例是什么?如果我们了解需求和背景,我们可能会为您提供更好的帮助。
-
你想达到什么目的?
-
@Jason,我可以想到几个用例——其中一个就是日志记录。这是个好问题
标签: c# properties yield-return