可能重复:
在 C# 中获取方法的调用者
是否可以获取执行方法的对象的实例?
例如...
public class Person
{
public string Name { get; set; }
public void PrintMyName()
{
NamePrinter np = new NamePrinter();
np.PrintName();
}
}
public class NamePrinter
{
public void PrintName()
{
Person p = ?;
Console.Writeline(p.Name);
}
}
public class Program
{
static void Main()
{
Person person = new Person() { Name = "Brandon"; }
person.PrintMyName();
}
}
有没有办法在 PrintName 方法中找到“p”?
编辑:上面这段代码中的问题可以很容易地解决很多不同的方法。请假设我并不愚蠢,这只是我能想出的最简单的代码,可以让我的问题变得清晰。