在继承类之前处置基类

时间:2016-08-16 08:35:20

标签: c# .net inheritance dispose idisposable

我有两个班级:

public abstract class UnitOfWorkBase: IDisposable { }
public sealed class UnitOfWorkSql: UnitOfWorkBase { }

派生类的Dispose方法通常如下所示:

protected override void Dispose (bool disposing)
{
    if (!this.Disposed)
    {
        if (disposing)
        {
            // Managed.
        }

        // Unmanaged.

        this.Disposed = true;
    }

    base.Dispose(disposing);
}

我总是在方法结束时看到对base.Dispose(disposing)的调用。但是,在最近的场景中,需要在派生类中的对象之前配置基类的对象,如下所示:

protected override void Dispose (bool disposing)
{
    base.Dispose(disposing);

    if (!this.Disposed)
    {
        if (disposing)
        {
            // Managed.
        }

        // Unmanaged.

        this.Disposed = true;
    }
}

我不确定这是否被认为是不好的做法。有什么需要注意的吗?

0 个答案:

没有答案