/// <summary> /// Charge un film complètement pour l'afficher /// </summary> /// <param name="film">le film à charger</param> public async Task ChargerFilm(Film film) { FilmAffiche = await _filmBusiness.GetFilm(film.Id); if (FilmAffiche.IdCollection > 0) { var collec = await _filmBusiness.GetCollection(FilmAffiche.IdCollection); //si il y a une collection, ajout des données locales if (collec != null) { TitreCollection = collec.NomCollection; FilmCollection = new ObservableCollection <Film>(collec.FilmCollection); foreach (var film1 in FilmCollection) { film1.Opacity = opacityPossess; } FilmCollectionVisible = true; //puis s'il y a des données d'internet, ajout des films provenant d'internet try { if (collec.IdCollectionInternet > 0) { //récupération des films d'internet var collecInternet = new ObservableCollection <Film>(await _movieDbBusiness.GetCollectionMovie(collec.IdCollectionInternet)); //ajout des films à la collection déjà faite var listeIdInternet = FilmCollection.Select(x => x.IdInternet).ToList(); foreach (var film1 in collecInternet.Where(film1 => !listeIdInternet.Contains(film1.IdInternet))) { film1.Opacity = opacityNoPossess; FilmCollection.Add(film1); } //tri des films FilmCollection = new ObservableCollection <Film>(FilmCollection.OrderBy(x => x.Annee).ThenBy(x => x.IdInternet)); } } catch (Exception) { //Ignored } } } }