/// <summary> /// Fetches Office 365 access token. If Token is expired, /// </summary> /// <returns></returns> private async Task ApplyAccessTokenAsync(ServiceAuthenticationContract serviceAuthenticationContract) { if (_authenticationResult == null || DateTime.UtcNow >= _authenticationResult.ExpiresOn) { _authenticationResult = await _authWrapper.GetAuthenticationResult(serviceAuthenticationContract); _httpClient.DefaultRequestHeaders.Clear(); _httpClient.DefaultRequestHeaders.Add("Authorization", "Bearer " + _authenticationResult.AccessToken); } }
/// <summary> /// /// </summary> /// <returns></returns> public async Task <SqlConnection> CreateConnectionAsync() { SqlConnection sqlConnection; if (_configuration.AppSettings.Env == Enum.GetName(typeof(Environment.Env), 0)) { sqlConnection = new SqlConnection(_configuration.AppSettings.DevSqlConnectionString); } else { var result = await _authWrapper.GetAuthenticationResult(_sqlServiceAuthenticationContract).ConfigureAwait(false); sqlConnection = GetSqlConnection(result.AccessToken); } return(sqlConnection); }