c# - 获取包含类的实例

标签 c# reflection reference

是否可以在不传递和存储引用的情况下从成员对象访问对象?在下面的示例中,给定的椅子对象是否可以访问房屋对象,而房屋不必将其引用传递到成员层次结构中?

public class Chair {
    public string Material { get; set; }

    public Chair() {
       Material = "Wood";
    }

    public bool IsInMiami() {
       // Get instance of House where chair is found
       House house = ... // Reflection?
       return house.City.Equals("Miami");
    }
}

public class Room {
    private List<Chair> _chairs;

    public Room() {
       _chairs = new List<Chair>();
       _chairs.Add(new Chair());
    } 
}

public class House {
    private List<Room> _rooms;
    public string City { get; set; }

    public House() {
       _rooms = new List<Room>();
       _rooms.Add(new Room());
       City = "Orlando";
    }
}

答案可能是通过反射(reflection),但我不知道如何去做,或者是否有其他方法可以达到同样的目的。

提前致谢

最佳答案

如果主席没有提及众议院,则无法做到这一点。从主席的角度来看,它与众议院之间没有任何关系。事实上,主席可以属于许多议院,也可以不属于任何议院。

关于c# - 获取包含类的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12418208/

相关文章:

c# - 冗余 "using"是否会降低性能

c# - 为单个标签 .Net 组合两个资源键

c# - Pinvoke Bool - MarshalDirectiveExeption

java - 为什么通用 "factory"创建的类型与来自相同内联代码的类型不同?

c# - 寻找在调试器中获取对象实例的方法的工具?

ios - 有没有办法动态实例化类类型

c++ - 当数组中的类元素被修改时,它的行为就像是一个拷贝,而不是引用

c# - 有没有办法在 Mac OS X 10.4.8 中通过双击运行 example.exe C# 桌面应用程序?

c# - 是否可以编写一个类来隐藏添加 WeakEventManager 处理程序和传统处理程序之间的区别?

c++ - 通过引用传递参数到底是什么?