public void Dispose()
 {
     if (!_disposed)
     {
         _proxy.Dispose();
         _disposed = true;
     }
     GC.SuppressFinalize(this);
 }