从C#中的方法检索对调用类实例的引用

时间:2012-06-19 10:48:29

标签: c#

我在C#中有以下场景

public class classA
{
public int fieldA = 1;

public classA()
{
    classB b=new classB();
    b.Execute();
}
}


public class classB
{
    public Execute() 
    {
        //I can get the type of classA using
        FieldInfo fi = stackTrace.GetFrame(1).GetMethod().DeclaringType
    }
}

问题是我如何获得在classB实例中调用Execute的classA的引用?

我尝试使用反射但无法找到任何方法。

非常感谢任何帮助

2 个答案:

答案 0 :(得分:3)

你可以在执行方法中发送A到B的引用,如下所示:

b.Execute(this);

你可以通过这种方式到达对象A.

答案 1 :(得分:1)

像这样更改B类

public class B
{
    public Execute(A aObj) 
    {
        //class A Object is available here


    }

}

像这样改变A类

public class A

{
   public A()
        {

            B b = new B();
            b.Execute(this);
        }
}