private async Task <List <Personne> > GetPersonnesMovie(CreditJson credit, TypePersonneEnum typePersonne) { var filmBusiness = new FilmBusiness(); await filmBusiness.Initialization; var retour = new List <Personne>(); switch (typePersonne) { case TypePersonneEnum.PRODUCTEUR: if (credit.crew != null) { var found = credit.crew.Where(x => x.job.ToLower().Contains("producer")).Take(5).ToList(); foreach (var crewJson in found) { var personne = await filmBusiness.GetPersonneFromBase(crewJson.name); personne.Role = TypePersonneEnum.PRODUCTEUR; retour.Add(personne); } } break; case TypePersonneEnum.REALISATEUR: if (credit.crew != null) { var foundB = credit.crew.Where(x => x.job.ToLower() == "director").ToList(); foreach (var crewJson in foundB) { var personne = await filmBusiness.GetPersonneFromBase(crewJson.name); personne.Role = TypePersonneEnum.REALISATEUR; retour.Add(personne); } } break; case TypePersonneEnum.ACTEUR: if (credit.cast != null) { var foundC = credit.cast.OrderBy(x => x.order).Take(5).ToList(); foreach (var castJson in foundC) { var personne = await filmBusiness.GetPersonneFromBase(castJson.name); personne.Role = TypePersonneEnum.ACTEUR; personne.NomScene = castJson.character; retour.Add(personne); } } break; } return(retour); }