跟踪类实例/对象是哪些集合的成员

本文关键字:集合 成员 实例 对象 跟踪 | 更新日期: 2023-09-27 17:48:56

在。net (c#)中,当使用调试器时,是否有一种方法可以知道对象当前处于哪个集合中?

我有这样一种情况,类实例正在移动和移动不同的列表和数组,我试图在任何时间点追踪它当前所在的集合。例如,当我遇到断点时。

我能想到的唯一解决方案是编写某种跟踪器类。我希望调试器可能有一个方法跟踪这个。

编辑:我想这有点像你可以在调试器中扩展集合并查看成员的方式,除了我想做相反的。

谢谢。

跟踪类实例/对象是哪些集合的成员

听起来您将受益于使用观察者模式,它创建了"对象之间的一对多依赖关系,因此当一个对象改变状态时,它的所有依赖关系都将被通知并自动更新"。基本上,您有一个对象,每当一个项目被添加到集合中时,它都会收到通知。

。NET 4内置了这种模式的实现。查看。net中的观察者设计模式。

接口文档:

  • IObserver
  • IObservable<T>

查看ObservableCollection<T>类也可能是值得的,看看它是否会提供您需要的功能。

我不相信有这样的内置的东西,但它会很容易创建。只需在Watch窗口中添加表达式,每个集合一个。

或者在代码中创建一个函数,用于搜索集合并返回(例如,字符串数组(集合名称)),并从Watch窗口调用该函数。