在仅包含受管资源的类中

托管资源是运行时垃圾收集器知道并受其控制的资源。例如,BCL 中有许多类,例如 SqlConnection,它是非托管资源的包装类。这些类已经实现了 IDisposable 接口 - 完成后由代码来清理它们。

如果你的类仅包含托管资源,则不必实现终结器。

public class ObjectWithManagedResourcesOnly : IDisposable
{
    private SqlConnection sqlConnection = new SqlConnection();

    public void Dispose()
    {
        sqlConnection.Dispose();
    }
}