public MovieViewModel(SwapiResult result) { this.EpisodeId = result.EpisodeId; this.OpeningCrawl = result.OpeningCrawl; this.Producer = result.Producer; this.Director = result.Director; this.ReleaseDate = result.ReleaseDate; this.Title = result.Title; }
public async Task <SwapiResult> SearchSwapiPeople(string search) { SwapiResult swapiResult = new SwapiResult(); using (var httpClient = new HttpClient()) { var apiEndPoint = "https://swapi.dev/api/people/?search=" + search; httpClient.BaseAddress = new Uri(apiEndPoint); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); var responseMessage = await httpClient.GetAsync(apiEndPoint); if (responseMessage.IsSuccessStatusCode) { var jsonContent = await responseMessage.Content.ReadAsStringAsync(); swapiResult = JsonConvert.DeserializeObject <SwapiResult>(jsonContent); while (swapiResult.next != null) { var swapiMesage = await httpClient.GetAsync(swapiResult.next); if (swapiMesage.IsSuccessStatusCode) { var swapiJsonContent = await swapiMesage.Content.ReadAsStringAsync(); var people = JsonConvert.DeserializeObject <SwapiResult>(swapiJsonContent); swapiResult.results.AddRange(people.results); swapiResult.next = people.next; } } } } return(swapiResult); }