/// <summary> /// Adds StringContent containing a json string of the supplied body object /// </summary> /// <typeparam name="T">The type of body</typeparam> /// <param name="request">The SolidHttpRequest</param> /// <param name="body">The request body object</param> /// <param name="settings">(Optional) JsonSerializerSettings to use to serialize the body object</param> /// <returns>SolidHttpRequest</returns> public static SolidHttpRequest WithJsonContent <T>(this SolidHttpRequest request, T body, JsonSerializerSettings settings = null) { var json = JsonConvert.SerializeObject(body, settings ?? request.GetJsonSerializerSettings()); var content = new StringContent(json, Encoding.UTF8, "application/json"); return(request.WithContent(content)); }
/// <summary> /// Adds StringContent containing a json string of the supplied body object /// </summary> /// <typeparam name="T">The type of body</typeparam> /// <param name="request">The SolidHttpRequest</param> /// <param name="body">The request body object</param> /// <param name="settings">(Optional) DataContractSerializerSettings to use to serialize the body object</param> /// <returns>SolidHttpRequest</returns> public static SolidHttpRequest WithXmlContent <T>(this SolidHttpRequest request, T body, DataContractSerializerSettings settings = null) { using (var ms = new MemoryStream()) { var ser = new DataContractSerializer(typeof(T), settings ?? request.GetXmlSerializerSettings()); ser.WriteObject(ms, body); ms.Position = 0; var content = new StringContent(new StreamReader(ms).ReadToEnd(), Encoding.UTF8, "application/xml"); return(request.WithContent(content)); } }