public override int Read(byte[] buffer, int offset, int count) { int bytesToRead = count < this.RemainingPartSize ? count : (int)this.RemainingPartSize; if (bytesToRead < 0) return 0; return base.Read(buffer, offset, bytesToRead); }