如果我的 BaseUow 已经实现了它,我的 UoW 类是否需要实现 IDisposable

本文关键字:实现 我的 是否 IDisposable UoW BaseUow 如果 | 更新日期: 2023-09-27 17:57:05

我为我的工作单元创建了一个名为 BaseUoW 的基类,它继承了 IDisposable,如下所示:

public class BaseUoW : IDisposable
{
}

我的问题是...例如,如果我创建名为UserUoW的类继承我的BaseUoW,UserUoW是否需要实现IDisposable,或者它是由我的BaseUow处理

public class BaseUoW : IBaseUoW
{
}

public class BaseUoW : IBaseUoW, IDisposable
{
}

IBaseUoW

public interface IBaseUoW
{
    virtual void Dispose(bool disposing);
    void Commit();
}

如果我的 BaseUow 已经实现了它,我的 UoW 类是否需要实现 IDisposable

不需要将其添加到类声明中,除非您希望将其显式设置为可读性。

但是,您可能需要添加一个protected virtual void Dispose(bool disposing){方法重写来执行子类的清理任务(如果有)。

有关要遵循的正确模式的更多信息,请参阅此处。

编辑:正如评论中指出的那样,只有当您真正从基类扩展BaseUoW时才这样做。 因为你的"图片"显示它实现了其他一些接口,而不是扩展你的基类。

相关文章: