2

我在 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 的引用?

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

任何帮助将非常感激

4

2 回答 2

3

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

b.Execute(this);

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

于 2012-06-19T10:56:16.020 回答
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);
        }
}
于 2012-06-19T11:01:16.300 回答