public async Task <Model.iTunes.Movies.Movie> GetMoviesAsync(Model.iTunes.Movies.Movie.ListingType type = Model.iTunes.Movies.Movie.ListingType.TopMovies, int count = 20, string genre = "4413") { Model.iTunes.Movies.Movie movies = null; if (genre != "4413") { genre = this.GetMovieGenreByKey(genre); } try { var uri = BuildMoviesUrl(type, count, genre); var httpResponseMessage = await this.GetAsync(new Uri(uri), null); var response = httpResponseMessage; if (response.IsSuccessStatusCode) { var json = await response.Content.ReadAsStringAsync(); movies = JsonConvert.DeserializeObject <Model.iTunes.Movies.Movie>(json); } else { response = (HttpResponseMessage)null; } } catch (Exception ex) { this.DealWithErrors(ex); } return(movies); }
public string BuildMoviesUrl(Model.iTunes.Movies.Movie.ListingType type = Model.iTunes.Movies.Movie.ListingType.TopMovies, int limit = 0, string genre = "4413") { var stringBuilder = new StringBuilder(this._urlBase); if (type == Model.iTunes.Movies.Movie.ListingType.TopMovies) { stringBuilder.Append(this._topMovies); } else { stringBuilder.Append(this._movieRentals); } if (limit > 0) { stringBuilder.Append(this._limit); stringBuilder.Append(limit.ToString()); } stringBuilder.Append(this._genre); stringBuilder.Append(genre); stringBuilder.Append("/json"); return(stringBuilder.ToString()); }