public ApiClientService(HttpClient client, ApiClientSettings apiClientSettings, IMemoryCache memoryCache = null, ILogger logger = null) { _client = client; _client.DefaultRequestHeaders.Clear(); _client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); _logger = logger; _clientSettings = apiClientSettings; _serializerSettings = new JsonSerializerSettings(); _serializerSettings.Formatting = Formatting.Indented; _serializerSettings.DateParseHandling = DateParseHandling.DateTime; _serializerSettings.DateTimeZoneHandling = DateTimeZoneHandling.RoundtripKind; _serializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); _memoryCache = memoryCache; }
protected ApiClientService(ApiClientSettings apiClientSettings) : this(new HttpClient() { BaseAddress = new Uri(apiClientSettings.BaseUrl), Timeout = TimeSpan.FromSeconds(apiClientSettings.MaxTimeoutSeconds) }, apiClientSettings, new MemoryCache(new MemoryCacheOptions()), null) { }