如何处置声明为列表的属性?

rat*_*tty 1 c# dispose

我想处理我声明为对象列表的列表.请找到例子

Class A
{
    public void m()
    {
        Ilist<myclass> sam = new Ilist<myclass>();
        sam.Add(ob1); ==> some objects i am adding
        sampleProperty = sam;
    }
}

class B:C
{
    public Ilist<myclass> sampleProperty
    {
        get;
        set;
    }

    public override void m()
    {
        foreach(myclass s in sampleProperty)
        {
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我的申请被关闭后,我的财产仍然存在.我不能将它设置为null因为我在覆盖方法中使用我的属性,所以我不知道什么时候会被调用.我忘了通知一件事C类是实现IDisposable接口

Sid*_*gal 5

您不需要在C#中处理列表.自动垃圾收集器为您完成.您只需在释放,释放或重置非托管资源时处置对象.

编辑:如果它的情况myClassdisposable(实现IDisposable),那么你只需在每个对象上调用object.Dispose().