是否有方法可以了解通用C#对象是否是集合的一部分?有没有办法检索所说的收藏品?
我知道一个Object不知道是另一个的一部分(没有关于父母的任何存储的参考),但也许可以使用对泛型集合的反射。
答案 0 :(得分:0)
回答原始问题:不,你不应该能够找到一个对象的父集合,反射可能无济于事。
但是,您可以通过使用扩展方法修改ICollection.Add()的行为并在每个添加的对象中存储对其公共容器的引用来实现您的需要。
在对象中放置其他数据似乎是可以实现的,如下所述: How can additional data be associated with existing objects using extension methods?
可能还有其他解决方案可以实现您的需求,但就我自己而言,我会选择类似的东西。