public async Task <IResult <IEnumerable <IStandardsAndFrameworks> > > GetStandardByCode(StandardSearchCriteria criteria)
        {
            Throw.IfNull(criteria, nameof(criteria));
            _logger.LogMethodEnter();

            try
            {
                _logger.LogInformationObject("StandardSearchCriteria Criteria", criteria);
                //HttpClient httpClient = new HttpClient();
                _httpClient.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", _settings.ApiKey);

                var response = await _httpClient.GetAsync(new Uri(_getStandardByCodeUri.AbsoluteUri + "?StandardCode=" + criteria.StandardCode + "&Version=" + criteria.Version));

                _logger.LogHttpResponseMessage("GetStandardByCode service http response", response);

                if (response.IsSuccessStatusCode)
                {
                    var json = await response.Content.ReadAsStringAsync();

                    _logger.LogInformationObject("GetStandardByCode service json response", json);
                    IEnumerable <StandardsAndFrameworks> results = JsonConvert.DeserializeObject <IEnumerable <StandardsAndFrameworks> >(json);

                    return(Result.Ok <IEnumerable <IStandardsAndFrameworks> >(results));
                }
                else
                {
                    return(Result.Fail <IEnumerable <IStandardsAndFrameworks> >("GetStandardByCode service unsuccessful http response"));
                }
            }
            catch (HttpRequestException hre)
            {
                _logger.LogException("GetStandardByCode service http request error", hre);
                return(Result.Fail <IEnumerable <IStandardsAndFrameworks> >("GetStandardByCode service http request error."));
            }
            catch (Exception e)
            {
                _logger.LogException("GetStandardByCode unknown error.", e);
                return(Result.Fail <IEnumerable <IStandardsAndFrameworks> >("GetStandardByCode service unknown error."));
            }
            finally
            {
                _logger.LogMethodExit();
            }
        }
        public async Task <Result <IEnumerable <StandardsAndFrameworks> > > GetStandardByCode(StandardSearchCriteria criteria)
        {
            if (criteria == null)
            {
                throw new ArgumentNullException(nameof(criteria));
            }

            try
            {
                var response = await _httpClient.GetAsync(new Uri(_getStandardByCodeUri.AbsoluteUri + "?StandardCode=" + criteria.StandardCode + "&Version=" + criteria.Version));

                if (response.IsSuccessStatusCode)
                {
                    var json = await response.Content.ReadAsStringAsync();

                    var results = JsonConvert.DeserializeObject <IEnumerable <StandardsAndFrameworks> >(json);

                    return(Result.Ok <IEnumerable <StandardsAndFrameworks> >(results));
                }
                else
                {
                    return(Result.Fail <IEnumerable <StandardsAndFrameworks> >("GetStandardByCode service unsuccessful http response"));
                }
            }
            catch (HttpRequestException hre)
            {
                _logger.LogError(hre, "GetStandardByCode service http request error");
                return(Result.Fail <IEnumerable <StandardsAndFrameworks> >("GetStandardByCode service http request error."));
            }
            catch (Exception e)
            {
                _logger.LogError(e, "GetStandardByCode unknown error.");
                return(Result.Fail <IEnumerable <StandardsAndFrameworks> >("GetStandardByCode service unknown error."));
            }
        }