private static async Task WriteHeadersAsync(StreamWriter writer, IHeaderCollection headerCollection) { foreach (var header in headerCollection.Where(ShouldSendHeader).OrderBy(h => h.Name, StringComparer.Ordinal) ) { await writer.WriteAsync(header.Name).ConfigureAwait(false); await writer.WriteAsync(": ").ConfigureAwait(false); await writer.WriteAsync(header.First()).ConfigureAwait(false); await writer.WriteLineAsync().ConfigureAwait(false); } }