public async Task PlaceOrderAsync() { if (GlobalCats == null) { GlobalCats = await getCatsAsync("cats"); } NewOrder newOrder = new NewOrder(); List <String> userInput = new List <String>(); String input = ""; Console.WriteLine("Vilka katter vill du köpa? ange namn, tryck därefter enter. Avsluta med q när du är klar"); while (!input.Equals("q")) { input = Console.ReadLine(); if (input.Equals("q")) { break; } else { userInput.Add(input); } } foreach (var catname in userInput) { foreach (var catInDB in GlobalCats.cats) { if (catInDB.name.Equals(catname)) { newOrder.catIds.Add(catInDB.id); } } } httpClient.DefaultRequestHeaders.Accept.Clear(); httpClient.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue("application/json")); var stringPayload = await Task.Run(() => JsonConvert.SerializeObject(newOrder)); var httpContent = new StringContent(stringPayload, Encoding.UTF8, "application/json"); var httpResponse = await httpClient.PostAsync("http://sogetiorebrointerview.azurewebsites.net/api/orders", httpContent); if (httpResponse.Content != null) { var responseContent = await httpResponse.Content.ReadAsStringAsync(); Console.WriteLine(responseContent); } }
public async Task <Cats> getCatsAsync(string path) { Cats cats = new Cats(); HttpResponseMessage response = await httpClient.GetAsync(path); if (response.IsSuccessStatusCode) { cats = JsonConvert.DeserializeObject <Cats>( await response.Content.ReadAsStringAsync()); } GlobalCats = cats; return(cats); }
public async Task getCats() { Cats cats = new Cats(); Uri uri = new Uri(httpClient.BaseAddress, cats.uri); httpClient.DefaultRequestHeaders.Accept.Clear(); httpClient.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue("application/json")); try { cats = await getCatsAsync(uri.PathAndQuery); Console.Write(cats.ToString()); } catch (Exception e) { Console.WriteLine(e.Message); } }