/// <summary> /// Dispose. /// </summary> /// <param name="disposing"></param> protected virtual void Dispose(Boolean disposing) { if (IsDisposed) { return; } IsDisposed = true; Underlying.Dispose(); if (disposing) { // Dispose managed state (managed objects) Underlying?.Dispose(); } }