public async Task <DeleteItemByIdResponse> DeleteItemById(DeleteItemByIdRequest item) { string url = $"/item/delete"; var requestBody = await Task.Run(() => JsonConvert.SerializeObject(item)); using (HttpClient httpClient = new HttpClient()) { DeleteItemByIdResponse data = new DeleteItemByIdResponse(); try { var authHeader = new AuthenticationHeaderValue("Bearer", await SecureStorage.GetAsync("auth_token")); httpClient.DefaultRequestHeaders.Authorization = authHeader; httpClient.BaseAddress = new Uri(Constants.BaseUrl); StringContent content = new StringContent(requestBody, Encoding.UTF8, "application/json"); HttpResponseMessage result = await httpClient.PostAsync(url, content); string response = await result.Content.ReadAsStringAsync(); data = JsonConvert.DeserializeObject <DeleteItemByIdResponse>(response); if (result.IsSuccessStatusCode && result.StatusCode == HttpStatusCode.OK) { return(data); } return(null); } catch (Exception exp) { return(null); } } }
public async Task <DeleteItemByIdResponse> DeleteItemById(DeleteItemByIdRequest item) { IsBusy = true; try { var res = await itemsAPI.DeleteItemById(item); if (res != null) { if (res.Code == 0) { return(res); } else { return(null); } } return(null); } catch (Exception ex) { throw; } finally { IsBusy = false; } }
private async void Delete_Tapped(object sender, EventArgs e) { FontIconLabel button = (FontIconLabel)sender; button.IsEnabled = false; try { ItemsWithRating item = (ItemsWithRating)((Label)sender).BindingContext; var answer = await DisplayAlert("Message", "Are you sure you want to delete item '" + item.item.foodName + "' ?", "YES", "NO"); if (answer) { DeleteItemByIdRequest reqObj = new DeleteItemByIdRequest() { id = item.item.id.ToString() }; var res = await userProfileViewModel.DeleteItemById(reqObj); if (res != null) { if (res.Code == 0) { await DisplayAlert("Message", "Item deleted successfully!", null, "OK"); await LoadUser(); viewModel.LoadItemsCommand.Execute(null); //viewModel.ExecuteLoadItemsCommand(); } else { await DisplayAlert("Message", "Couldn't delete the item. Please try again.", null, "OK"); } } else { await DisplayAlert("Message", "Couldn't delete the item. Please try again.", null, "OK"); } } } catch (Exception ex) { } finally { button.IsEnabled = true; } }