protected void UploadBits(Stream writeStream, Stream readStream, byte[] data, byte[] header, byte[] footer, bool DoNotCloseWriteStream = false) { if (request.RequestUri.Scheme == Uri.UriSchemeFile) { header = (byte[])(footer = null); } HttpUploadBitsState state = new HttpUploadBitsState(readStream, data, header, footer, DoNotCloseWriteStream); state.SetRequestStream(writeStream); while (!state.WriteBytes()) { } state.Close(); }