Пример #1
0
        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);
        }