コード例 #1
0
        public string GetUri()
        {
            FluentUriBuilder request = new FluentUriBuilder("https://dev1-api.net/v6/asset/api/");

            return(request.AddQueryStringParam("skip", "0")
                   .AddQueryStringParam("take", "20")
                   .AddQueryStringParam("isMember", "True")
                   .Uri
                   .ToString());
        }
コード例 #2
0
        /// <summary>
        /// Searchs product.
        /// </summary>
        /// <param name="productsByProgramRun">The productsByProgramRun.</param>
        /// <param name="token">The token.</param>
        /// <returns>Task{ProductResponseModel}.</returns>
        public async Task <ProductResponseModel> SearchProduct(ProductsByProgramRun productsByProgramRun, string token)
        {
            try
            {
                string           providerName = _appSettings.ProductProvider1Api.ProviderName;
                string           requestUri   = _appSettings.ProductProvider1Api.RequestUri;
                FluentUriBuilder request      = CreateRequest(requestUri);

                request.AddQueryStringParam("skip", "0");
                request.AddQueryStringParam("take", "20");
                request.AddQueryStringParam("isMember", "True");
                request.AddQueryStringParam("q", productsByProgramRun.ProductCode);

                RemoveDefaultRequestHeaders();
                _httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/vnd.mywebgrocer.product-list+json"));
                _httpClient.DefaultRequestHeaders.Add("Authorization", token);

                var response = await GetAsync <Provider1ProductsResponse>($"SearchProducts from {request.Uri}", request.Uri, CancellationToken.None, providerName);

                ProductResponseModel productResponseDTO = ConvertToProductResponseDTO(productsByProgramRun, response);

                return(productResponseDTO);
            }
            catch (Exception e)
            {
                _logger.LogError($"{nameof(SearchProduct)} Unknown error encountered when reading an object ex {e}");
            }

            return(new ProductResponseModel()
            {
                PromotionId = productsByProgramRun.PromotionId.ToString(),
                OfferId = productsByProgramRun.OfferId.ToString(),
                ProductCode = productsByProgramRun.ProductCode,
                Name = productsByProgramRun.Name,
                ProductsByProgramRun = productsByProgramRun,
                ProductType = ProductType.Provider1
            });
        }