private async Task <T> ReadAsJsonAsync <T>(HttpContent content) { using (var stream = await content.ReadAsStreamAsync().ConfigureAwait(false)) using (var reader = new StreamReader(stream)) using (var jsonReader = new JsonTextReader(reader)) { return(AgentySerializer <T> .Deserialize(jsonReader)); } }
private StreamContent GetStreamContent <T>(T value, StreamWriter writer) { using (var jsonWriter = new JsonTextWriter(writer) { CloseOutput = false }) { AgentySerializer <T> .Serialize(jsonWriter, value); jsonWriter.Flush(); } writer.BaseStream.Seek(0, SeekOrigin.Begin); var content = new StreamContent(writer.BaseStream); content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json"); return(content); }