コード例 #1
0
        public async Task <T> PostAsync <T>(GoogleCloudPrintMethod method, PostData postData, String queryString, CancellationToken token = default)
            where T : class
        {
            var content = CreateBody <T>(postData);

            using (var response = await _httpClient.PostAsync($"{method.ToString().ToLower()}?output=json{queryString}", content, token))
            {
                if (!response.IsSuccessStatusCode)
                {
                    return(null);
                }

                var json = await response.Content.ReadAsStringAsync();

                var serializerSettings = new JsonSerializerSettings
                {
                    NullValueHandling     = NullValueHandling.Ignore,
                    MissingMemberHandling = MissingMemberHandling.Ignore,
                    Converters            = new List <JsonConverter>
                    {
                        new Newtonsoft.Json.Converters.StringEnumConverter()
                    }
                };
                var result = JsonConvert.DeserializeObject <T>(json, serializerSettings);
                return(result);
            }
        }
コード例 #2
0
 public Task <T> PostAsync <T>(GoogleCloudPrintMethod method, PostData postData, CancellationToken token = default)
     where T : class
 {
     return(PostAsync <T>(method, postData, null, token));
 }