/// <summary> /// Get items with a item request /// </summary> /// <param name="itemsRequest"></param> /// <returns></returns> public async Task <GetItemsResponse> GetItemsAsync(ItemsRequest itemsRequest) { if (!this._amazonResourceValidator.IsResourcesValid(itemsRequest.Resources, "GetItems")) { return(new GetItemsResponse { Successful = false, ErrorMessage = "Resources has wrong values" }); } var request = new GetItemsRequest { ItemIds = itemsRequest.ItemIds, Resources = itemsRequest.Resources, Merchant = itemsRequest.Merchant, PartnerTag = this._partnerTag, PartnerType = "Associates", Marketplace = $"www.{this._amazonEndpointConfig.Host}", }; var json = JsonConvert.SerializeObject(request, this._jsonSerializerSettingsRequest); if (string.IsNullOrEmpty(json)) { return(new GetItemsResponse { Successful = false, ErrorMessage = "Cannot serialize object" }); } var response = await this.RequestAsync("GetItems", json); return(this.DeserializeObject <GetItemsResponse>(response)); }
public async Task <GetItemsResponse> GetItemsAsync(GetItemsRequest request) { try { Logger.Trace("GetItems start, request={@request}", request); if (request.PageNumber < 1 || request.PageSize < 1) { return(new GetItemsResponse(false)); } using (var context = ContextFactory.CreateDbContext()) { return(new GetItemsResponse(true, await context.Items .Where(item => item.ParentId.Equals(request.ParentGuid)) .OrderBy(item => item.Title) .Skip((request.PageNumber - 1) * request.PageSize) .Take(request.PageSize) .ToListAsync())); } } catch (Exception exception) { Logger.Error(exception, exception.Message); return(new GetItemsResponse(false)); } }
/// <summary> /// Retrieves items from the public catalog. /// </summary> public static async Task <PlayFabResult <GetItemsResponse> > GetItemsAsync(GetItemsRequest request, object customData = null, Dictionary <string, string> extraHeaders = null) { await new PlayFabUtil.SynchronizationContextRemover(); var requestContext = request?.AuthenticationContext ?? PlayFabSettings.staticPlayer; var requestSettings = PlayFabSettings.staticSettings; if (requestContext.EntityToken == null) { throw new PlayFabException(PlayFabExceptionCode.EntityTokenNotSet, "Must call Client Login or GetEntityToken before calling this method"); } var httpResult = await PlayFabHttp.DoPost("/Catalog/GetItems", request, "X-EntityToken", requestContext.EntityToken, extraHeaders); if (httpResult is PlayFabError) { var error = (PlayFabError)httpResult; PlayFabSettings.GlobalErrorHandler?.Invoke(error); return(new PlayFabResult <GetItemsResponse> { Error = error, CustomData = customData }); } var resultRawJson = (string)httpResult; var resultData = PluginManager.GetPlugin <ISerializerPlugin>(PluginContract.PlayFab_Serializer).DeserializeObject <PlayFabJsonSuccess <GetItemsResponse> >(resultRawJson); var result = resultData.data; return(new PlayFabResult <GetItemsResponse> { Result = result, CustomData = customData }); }
private void LoadPage() { var request = new GetItemsRequest { Page = itemsPage, PageSize = itemsPageSize, }; var items = Game.Api.GetItems(request).ToList(); _items = items.Take(itemsPageSize).ToList(); //var first = _items.First(); //var res = Game.Api.RemoveTags(first.ID, "temp"); //var it2 = Game.Api.GetItems(request).ToList(); //foreach (var item in it2) //{ // var tags = item.Tags.ToList(); // var tStr = string.Join(",", tags); //} RenderItems(); }
public GetItemsResponse GetItems(GetItemsRequest request) { GetItemsResponse viewModel = new GetItemsResponse(); try { var viewedItems = request.CurrentPage * request.ItemsPerPage; // If the list isn't configurated in the settings, the application will not show it if (!_configuration.ItemLists.ItemLists.Any(il => il.ItemTypeOriginId.Equals(request.ItemTypeOriginId))) { throw new Exception(string.Format("{1}{2}", _localizationErrorKey, "ListNotConfigurated")); } viewModel.Headers = _configuration.ItemLists.ItemLists .Single(il => il.ItemTypeOriginId.Equals(request.ItemTypeOriginId)) .VisibleFields.Select(vf => new GetItemsResponse.Header() { Name = vf.Name }) .OrderBy(vf => vf.Name) .ToList(); viewModel.Items = _dataContext.OR_Items .OrderByDescending(i => i.CreationDate) .Skip(viewedItems).Take(request.ItemsPerPage) .Where(i => i.ItemTypeOriginId.Equals(request.ItemTypeOriginId)) .Select(i => new GetItemsResponse.Item() { Id = i.Id, OriginId = i.OriginId, ItemTypeOriginId = i.ItemTypeOriginId, CreationDate = formatDate(i.CreationDate), LastEditDate = formatDate(i.LastEditDate), Properties = _dataContext.OR_Properties .Where(p => p.RelatedOriginId == i.OriginId) .Where(p => _configuration.ItemLists.ItemLists .Single(il => il.ItemTypeOriginId.Equals(request.ItemTypeOriginId)) .VisibleFields.Select(vf => vf.Name).ToList() .Contains(p.Name)) .Select(p => new GetItemsResponse.Property() { Id = p.Id, OriginId = p.OriginId, Name = p.Name, Value = p.Value }) .OrderBy(p => p.Name) .ToList() }) .ToList(); } catch (Exception exc) { viewModel.ResultInfo.Result = Base.ResultInfoDto.ResultEnum.Error; viewModel.ResultInfo.ErrorMessage = exc.Message; } return(viewModel); }
public Response <PagedList <ItemDTO> > Get( int pageIndex = 1, int pageSize = 20, string status = "", string primarySupplierId = "", string itemClsId = "", string itemBrandId = "", string itemDepartmentId = "", string keyword = "") { var request = new GetItemsRequest() { PageIndex = pageIndex, PageSize = pageSize, Status = status, PrimarySupplierId = primarySupplierId, ItemClsId = itemClsId, ItemBrandId = itemBrandId, ItemDepartmentId = itemDepartmentId, Keyword = keyword }; var response = _client.GetItems(request); return(new PagedList <ItemDTO>(response.Items, response.TotalCount)); }
//#region Public Methods //public Base AddItem(AddItemRequest request) //{ // Base viewModel = new Base(); // try // { // // Prendo l'originId del tipo di item // OR_ItemType itemType = GetItemType(request.ItemType); // // Creo l'item // Guid itemOriginId = Guid.NewGuid(); // OR_Item item = new OR_Item() // { // OriginId = itemOriginId, // ItemTypeOriginId = itemType.OriginId, // LastEditDate = DateTime.Now, // CreationDate = DateTime.Now // }; // _dataContext.OR_Items.Add(item); // _dataContext.SaveChanges(); // // Per ogni input creo la relativa property // foreach (AddItemRequest.Input input in request.Inputs) // { // Guid propertyOriginId = Guid.NewGuid(); // OR_Property property = new OR_Property() // { // OriginId = propertyOriginId, // RelatedOriginId = item.OriginId, // Name = input.Name, // Value = input.Value // }; // _dataContext.OR_Properties.Add(property); // } // // NB. Gli input vengono aggiornati automaticamente al submit // _dataContext.SaveChanges(); // } // catch (Exception exc) // { // viewModel.ResultInfo.Result = Base.ResultInfoDto.ResultEnum.Error; // viewModel.ResultInfo.ErrorMessage = exc.Message; // } // return viewModel; //} public GetItemsResponse GetItemsToList(GetItemsRequest request) { GetItemsResponse viewModel = new GetItemsResponse(); try { var viewedItems = request.CurrentPage * request.ItemsPerPage; // If the list isn't configurated in the settings, the application will not show it //if (!_configuration.ItemLists.ItemLists.Any(il => il.ItemTypeOriginId.Equals(request.ItemTypeOriginId))) //{ // throw new Exception(string.Format("{0}{1}", _localizationErrorKey, "ListNotConfigurated")); //} //viewModel.Headers = _configuration.ItemLists.ItemLists // .Single(il => il.ItemTypeOriginId.Equals(request.ItemTypeOriginId)) // .VisibleFields.Select(vf => new GetItemsResponse.Header() // { // Name = vf.Name // }) // .OrderBy(vf => vf.Name) // .ToList(); viewModel.Items = _dataContext.OR_Items .OrderByDescending(i => i.CreationDate) .Skip(viewedItems).Take(request.ItemsPerPage) .Where(i => i.ItemTypeOriginId.Equals(request.ItemTypeOriginId)) .Select(i => new GetItemsResponse.Item() { Id = i.Id, OriginId = i.OriginId.ToString(), ItemTypeOriginId = i.ItemTypeOriginId.ToString(), CreationDate = FormatDate(i.CreationDate), LastEditDate = FormatDate(i.LastEditDate), Properties = _dataContext.OR_PropertyValues .Where(pv => pv.ItemOriginId == i.OriginId) .Join(_dataContext.OR_Properties, value => value.PropertyOriginId, property => property.OriginId, (value, property) => new GetItemsResponse.Property() { Id = property.Id, OriginId = property.OriginId.ToString(), Name = property.Name, Value = value.Value }) .OrderBy(p => p.Name) .ToList() }) .ToList(); } catch (Exception exc) { viewModel.ResultInfo.Result = Base.ResultInfoDto.ResultEnum.Error; viewModel.ResultInfo.ErrorMessage = exc.Message; } return(viewModel); }
public Task <IList <Item> > Handle(GetItemsRequest request) { var domainBasket = _store.GetById(request.BasketId); var items = _mapper.Map <IList <Item> >(domainBasket?.Items); return(Task.FromResult(items)); }
public void ExecuteRequestTest() { WebClient webClient = new WebClient(); GetItemsRequest request = new GetItemsRequest(); string result = webClient.ExecuteRequest(request); Assert.True(result.Length > 0); }
public async Task <IActionResult> Get(Guid basketId) { var request = new GetItemsRequest { BasketId = basketId }; var items = await _mediator.Send(request); return(Ok(items)); }
public override async Task GetItems(GetItemsRequest request, IServerStreamWriter <ItemResponse> responseStream, ServerCallContext context) { List <ItemResponse> items = _documentManager.GetItems(request); foreach (var item in items) { await responseStream.WriteAsync(item); } }
public Item Get(string SKU, List <string> Details, bool IncludeVariations = false, bool ApplyFiltersToVariations = false) { GetItemsRequest req = new GetItemsRequest() { Page = 0, PageSize = 1, filters = new List <RequestFilter>() { new RequestFilter() { field = "ProductSKU", values = new List <string>() { SKU } } }, ApplyFiltersToVariations = ApplyFiltersToVariations, IncludeVariations = IncludeVariations }; if (Details != null) { req.details = new List <ItemDetail>(); Details.ForEach(x => req.details.Add(new ItemDetail() { field = x })); } RestRequest elm = CreateRequest <GetItemsRequest>("Products/GetProducts", Method.POST, req); IRestResponse <PagedResponse <Item> > resp = Client.Execute <PagedResponse <Item> >(elm); if (resp.StatusCode == HttpStatusCode.OK) { if (resp.Data != null && resp.Data.TotalCount > 0) { return(resp.Data.Content[0]); } else { return(null); } } else if (resp.StatusCode == HttpStatusCode.Unauthorized) { throw new UnauthorizedException(); } else { return(null); } }
public List <ItemResponse> GetItems(GetItemsRequest request) { List <ItemResponse> result = new List <ItemResponse>(); List <Item> items = _unitOfWork.ItemRepository.GetActiveItemsByProvider(providerValue); foreach (var item in items) { result.Add(new ItemResponse { Id = item.Id, Name = item.Name, ParentId = item.ParentItemId, ProjectId = item.ProjectId, Size = item.Size, TypeId = item.TypeId }); } return(result); }
private IEnumerable <LightspeedProduct> GetItems(IEnumerable <Order> orders) { var itemIds = orders.SelectMany(o => o.SaleLines.Select(sl => sl.ItemId)).ToHashSet(); var getItemsRequest = new GetItemsRequest(itemIds); var result = new List <LightspeedProduct>(); ActionPolicies.Submit.Do( () => { result = _webRequestServices.GetResponse <LightspeedProductList>(getItemsRequest).Item.ToList(); }); return(result); }
public async Task <IActionResult> GetItems([FromBody] GetItemsRequest getItemsRequest) { if (getItemsRequest.ItemsForSearch == null) { return(BadRequest(new FailedResponse { Errors = new List <string> { "The ItemsForSearch field is required" } })); } var items = await _shopService.GetPaginatedItemsAsync(getItemsRequest); return(Ok(items)); }
public async Task <PagedResponse <ItemResponse> > GetPaginatedItemsAsync(GetItemsRequest getItemsRequest) { var paginationFilter = _mapper.Map <PaginationFilter>(getItemsRequest.PaginationQuery); var items = _shopRepository.GetItems(getItemsRequest.ServerId, getItemsRequest.CategoryId, getItemsRequest.ItemsForSearch.ToLower(), getItemsRequest.SortType, getItemsRequest.Language); var paginatedItems = await RequestPaginationHelper.PaginateAsync(items, paginationFilter); var itemsResponse = _mapper.Map <ICollection <ItemResponse> >(paginatedItems); return(ResponsePaginationHelper.CreatePaginatedResponse(paginationFilter, itemsResponse, items.Count())); }
public GetItemsResponse ApiGetItems(GetItemsRequest getItemsRequest) { var getItemsResponse = new GetItemsResponse(); try { getItemsResponse = this.ExecuteApiGetItems(getItemsRequest); } catch (Exception ex) { if (((HttpWebResponse)((WebException)ex.InnerException).Response).StatusCode == HttpStatusCode.Unauthorized) { _apiAuthentication.GetToken(true); getItemsResponse = this.ExecuteApiGetItems(getItemsRequest); } } return(getItemsResponse); }
public override Task <GetItemsResponse> GetItems(GetItemsRequest request, ServerCallContext context) { var page = _itemDao.Query( pageIndex: request.PageIndex, pageSize: request.PageSize, status: request.Status, primarySupplierId: request.PrimarySupplierId, itemClsId: request.ItemClsId, itemBrandId: request.ItemBrandId, itemDepartmentId: request.ItemDepartmentId, keyword: request.Keyword); var response = new GetItemsResponse(); response.Items.AddRange(page.List.Select(item => _mapper.Map <ItemDTO>(item))); response.TotalCount = page.TotalCount; return(Task.FromResult(response)); }
/// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='request'> /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <IList <RepositoryItemMetadata> > GetListPostAsync(this IApiV1Item operations, GetItemsRequest request = default(GetItemsRequest), CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.GetListPostWithHttpMessagesAsync(request, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
public JsonResult GetItems(GetItemsRequest request) { var viewModel = _service.GetItemsToList(request); return(Json(viewModel)); }
public JsonResult GetItems(GetItemsRequest request) { var viewModel = service.GetItems(request); return(Json(viewModel, JsonRequestBehavior.DenyGet)); }
public static PageModel<GoodsDetail> GetItems(int pageNum, string sort = "Default", int[] ids = null, int categoryId = 0, int areaid = 0, double maxprice = 0, double minprice = 0, int pageSize = 40, string w = null, int type = 1) { if (ids != null && ids.Any()) { var r = GetItems(ids); return new PageModel<GoodsDetail> { CurrentPage = 1, Items = r, ItemsPerPage = ids.Length, TotalItems = r.Count, }; } var request = new GetItemsRequest { Fields = "Id", PageNum = pageNum, PageSize = pageSize, ShopCatIds = categoryId > 0 ? categoryId.ToString() : "", Sorts = sort, ShopId = GlobeInfo.InitiatedShopId, ItemState = 1, SaleType = type }; if (categoryId > 0) { request.ShopCatIds = categoryId.ToString(); } if (w.IsNotNullOrEmpty()) { request.ItemTitle = w.Trim(); } if (areaid > 0) { request.AreaIds = areaid.ToString(); } if (maxprice > 0) { request.MaxPrice = maxprice; } if (minprice > 0) { request.MinPrice = minprice; } var result = YunClient.Instance.Execute(request); if (!result.IsError && result.Items != null && result.Items.Any()) { var d = GetItems(result.Items.Select(e => (int)e.Id).ToArray()); return new PageModel<GoodsDetail> { Items = d, CurrentPage = pageNum, ItemsPerPage = pageSize, TotalItems = result.TotalItem, }; } return new PageModel<GoodsDetail>(); }
public static IList<GoodsDetail> GetFxItems(string w = null) { var r = new List<GoodsDetail>(); var request = new GetItemsRequest { Fields = "Id", PageNum = 1, PageSize = 40, ShopId = GlobeInfo.InitiatedShopId, ItemState = 1, SaleType = 3, ItemTitle = w }; var result = YunClient.Instance.Execute(request).Items; if (result != null && result.Any()) { r.AddRange(result.Select(item => Commodity.GetShopItemDetail((int)item.Id))); } return r; }
public async Task Handle(GetItemsRequest request, IOutputPort <GetItemsResponse> outputPort) { GetItemsResponse response = await _itemRepository.GetItemsAsync(request); outputPort.Handle(response); }
private GetItemsResponse ExecuteApiGetItems(GetItemsRequest getItemsRequest) { return(base.ExecutePost <GetItemsResponse>("api/Commands/Comercial.Ecommerce.WebServices.GetItensCommand", getItemsRequest, _apiAuthentication._authToken.Token)); }
public Task <IActionResult> GetAllItems([FromQuery] GetItemsRequest request) { return(this.HandleRequest <GetItemsRequest, GetItemsResponse>(request)); }
public KeyValuePair <int, byte[]>[] GetItems(GetItemsRequest request) { throw new NotImplementedException(); }
/// <remarks/> public void GetItemsAsync(GetItemsRequest GetItemsRequest, object userState) { if ((this.GetItemsOperationCompleted == null)) { this.GetItemsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetItemsOperationCompleted); } this.InvokeAsync("GetItems", new object[] { GetItemsRequest}, this.GetItemsOperationCompleted, userState); }
/// <remarks/> public void GetItemsAsync(GetItemsRequest GetItemsRequest) { this.GetItemsAsync(GetItemsRequest, null); }
public async Task <ServiceResponse <IEnumerable <IFileSystemItem> > > GetItems(GetItemsRequest request) { try { var items = _fileSystem.Items; if (!string.IsNullOrWhiteSpace(request.Filter)) { request.Filter = request.Filter.Replace("'", "\""); items = items.Where(request.Filter); } if (!string.IsNullOrWhiteSpace(request.OrderBy)) { items = items.OrderBy(request.OrderBy); } return(new ServiceResponse <IEnumerable <IFileSystemItem> >(items)); } catch (Exception exception) { return(new ServiceResponse <IEnumerable <IFileSystemItem> >(exception)); } }
/// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='request'> /// </param> public static IList <RepositoryItemMetadata> GetListPost(this IApiV1Item operations, GetItemsRequest request = default(GetItemsRequest)) { return(operations.GetListPostAsync(request).GetAwaiter().GetResult()); }
/// <summary> /// 搜索商品 /// </summary> /// <param name="page"></param> /// <param name="itemsperpage"></param> /// <param name="categoryId"></param> /// <param name="areaId"></param> /// <param name="title"></param> /// <param name="sort"></param> /// <param name="minPrice"></param> /// <param name="maxPrice"></param> /// <returns></returns> public static PageModel<GoodsDetail> Find(bool area, int page, int itemsperpage, int categoryId, int areaId, string title, string sort = "default", double minPrice = 0, double maxPrice = 0, int saleType = 1, int shopId = 0, string spid = "0", int itemcatid = 0, string recommend=null) { var init = new Yun.ClientCache.CacheFunc(); List<GoodsDetailInSql> data = null; long totalItem = 0; if (title.IsNotNullOrEmpty() || spid != "0" || itemcatid > 0 || categoryId>0) { var itemss = new GetItemsRequest { ItemTitle = title, ShopCatIds = categoryId > 0 ? categoryId.ToString() : null, Fields = "id", PageNum = page, PageSize = itemsperpage, AreaIds = areaId > 0 ? areaId.ToString() : null, Sorts = sort, MinPrice = minPrice, MaxPrice = maxPrice, SaleType = saleType, ShopId = shopId, Recommend = recommend, PropIds = spid != "0" ? spid : null, Operation = "propids:and", ItemCatIds = itemcatid > 0 ? itemcatid.ToString() : null }; var r = YunClient.Instance.Execute(itemss); data = init.FetchAll<GoodsDetailInSql>(_cacheName, "id IN (" + string.Join(",", r.Items.Select(e => e.Id)) + ") " + GenerateSort(sort)); totalItem = data.Count; } else { var sql=""; if (area) { sql = init.GenerateWhereSql(new List<WhereSql> { new WhereSql("CompanyId", GlobeInfo.InitiatedCompanyId, true), new WhereSql("ShopId", shopId, true), new WhereSql("CategoryId", categoryId, true), new WhereSql("AreaId", areaId, true), new WhereSql("IsRecommend", recommend!=null?recommend=="1"?"True":"False":null, true), new WhereSql("Price", minPrice, true, SqlOperatorsEnum.GreaterEqualThan), new WhereSql("Price", maxPrice, true, SqlOperatorsEnum.LessEqualThan), new WhereSql("SaleType",saleType, true), new WhereSql("OffShelfTime", DateTime.Now.ToString(), true, SqlOperatorsEnum.GreaterThan), new WhereSql("OnShelfTime", DateTime.Now.ToString(), true, SqlOperatorsEnum.LessEqualThan), }); } else { //不需要搜索文章标题的方法 sql = init.GenerateWhereSql(new List<WhereSql> { new WhereSql("CompanyId", GlobeInfo.InitiatedCompanyId, true), new WhereSql("ShopId", shopId, true), new WhereSql("CategoryId", categoryId, true), new WhereSql("AreaId", areaId, true), new WhereSql("IsRecommend", recommend!=null?recommend=="1"?"True":"False":null, true), new WhereSql("Price", minPrice, true, SqlOperatorsEnum.GreaterEqualThan), new WhereSql("Price", maxPrice, true, SqlOperatorsEnum.LessEqualThan), new WhereSql("SaleType",saleType, true), }); } sql += GenerateSort(sort); data = init.FetchAll<GoodsDetailInSql>(page, itemsperpage, _cacheName, sql, out totalItem); } return new PageModel<GoodsDetail> { CurrentPage = page, Items = data.ConvertAll(GoodsDetailInSql.ConvertGoodsDetail), ItemsPerPage = itemsperpage, TotalItems = totalItem, }; }
/// <param name='request'> /// </param> /// <param name='customHeaders'> /// Headers that will be added to request. /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> /// <exception cref="HttpOperationException"> /// Thrown when the operation returned an invalid status code /// </exception> /// <exception cref="SerializationException"> /// Thrown when unable to deserialize the response /// </exception> /// <return> /// A response object containing the response body and response headers. /// </return> public async Task <HttpOperationResponse <IList <RepositoryItemMetadata> > > GetListPostWithHttpMessagesAsync(GetItemsRequest request = default(GetItemsRequest), Dictionary <string, List <string> > customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) { // Tracing bool _shouldTrace = ServiceClientTracing.IsEnabled; string _invocationId = null; if (_shouldTrace) { _invocationId = ServiceClientTracing.NextInvocationId.ToString(); Dictionary <string, object> tracingParameters = new Dictionary <string, object>(); tracingParameters.Add("request", request); tracingParameters.Add("cancellationToken", cancellationToken); ServiceClientTracing.Enter(_invocationId, this, "GetListPost", tracingParameters); } // Construct URL var _baseUrl = Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "api/v1/item/_getList").ToString(); // Create HTTP transport objects var _httpRequest = new HttpRequestMessage(); HttpResponseMessage _httpResponse = null; _httpRequest.Method = new HttpMethod("POST"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (customHeaders != null) { foreach (var _header in customHeaders) { if (_httpRequest.Headers.Contains(_header.Key)) { _httpRequest.Headers.Remove(_header.Key); } _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); } } // Serialize Request string _requestContent = null; if (request != null) { _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(request, Client.SerializationSettings); _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); _httpRequest.Content.Headers.ContentType = System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); } // Send Request if (_shouldTrace) { ServiceClientTracing.SendRequest(_invocationId, _httpRequest); } cancellationToken.ThrowIfCancellationRequested(); _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); if (_shouldTrace) { ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); } HttpStatusCode _statusCode = _httpResponse.StatusCode; cancellationToken.ThrowIfCancellationRequested(); string _responseContent = null; if ((int)_statusCode != 200) { var ex = new HttpOperationException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); if (_httpResponse.Content != null) { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); } else { _responseContent = string.Empty; } ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent); if (_shouldTrace) { ServiceClientTracing.Error(_invocationId, ex); } _httpRequest.Dispose(); if (_httpResponse != null) { _httpResponse.Dispose(); } throw ex; } // Create Result var _result = new HttpOperationResponse <IList <RepositoryItemMetadata> >(); _result.Request = _httpRequest; _result.Response = _httpResponse; // Deserialize Response if ((int)_statusCode == 200) { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject <IList <RepositoryItemMetadata> >(_responseContent, Client.DeserializationSettings); } catch (JsonException ex) { _httpRequest.Dispose(); if (_httpResponse != null) { _httpResponse.Dispose(); } throw new SerializationException("Unable to deserialize the response.", _responseContent, ex); } } if (_shouldTrace) { ServiceClientTracing.Exit(_invocationId, _result); } return(_result); }