public async Task <Stream> ReadAsStreamAsync() { if (disposed) { throw new ObjectDisposedException(GetType().ToString()); } if (buffer != null) { return(new MemoryStream(buffer.GetBuffer(), 0, (int)buffer.Length, false)); } if (stream == null) { stream = await CreateContentReadStreamAsync().ConfigureAwait(false); } return(stream); }
public Task <Stream> ReadAsStreamAsync() { if (disposed) { throw new ObjectDisposedException(GetType().ToString()); } if (buffer != null) { return(CompletedTask.FromResult <Stream>(new MemoryStream(buffer.GetBuffer(), 0, (int)buffer.Length, false))); } if (stream == null) { return(CreateContentReadStreamAsync().Select(task => stream = task.Result)); } return(CompletedTask.FromResult(stream)); }
public async Task <string> ReadAsStringAsync() { await LoadIntoBufferAsync().ConfigureAwait(false); if (buffer.Length == 0) { return(string.Empty); } Encoding encoding; if (headers != null && headers.ContentType != null && headers.ContentType.CharSet != null) { encoding = Encoding.GetEncoding(headers.ContentType.CharSet); } else { encoding = Encoding.UTF8; } return(encoding.GetString(buffer.GetBuffer(), 0, (int)buffer.Length)); }