public ActionResult Index()
        {
            var stats = new Model.Statistics();

            stats = serviceClient.GetStatistics().ToModel();
            //stats = MockData.Instance.Stats;

            return(View(stats));
        }
Exemplo n.º 2
0
 public static DTO.MovieStatistics ToDTO(this Model.Statistics stats)
 {
     return(new DTO.MovieStatistics
     {
         ActorsPerGenre = stats.ActorsPerGenre,
         ActorsPerMovie = stats.ActorsPerMovie,
         MoviesPerActor = stats.MoviesPerActor,
         MoviesPerGenre = stats.MoviesPerGenre,
         NumberOfActors = stats.NumberOfActors,
         NumberOfMovies = stats.NumberOfMovies,
         Genres = stats.Genres
     });
 }
Exemplo n.º 3
0
        public MockData()
        {
            MovieList = new List <Model.Movie>
            {
                new Model.Movie
                {
                    ID    = 1,
                    Title = "Blade Runner",
                    Genre = new Model.Genre()
                    {
                        ID   = 1,
                        Name = "Action"
                    },
                    Year = 1982
                },
                new Model.Movie
                {
                    ID    = 2,
                    Title = "Silent Hill",
                    Genre = new Model.Genre()
                    {
                        ID   = 4,
                        Name = "Horror"
                    },
                    Actors = new List <Model.Actor>
                    {
                        new Model.Actor
                        {
                            ID        = 3,
                            FirstName = "Radha",
                            LastName  = "Mitchell"
                        }
                    },
                    Year = 2006
                },
                new Model.Movie
                {
                    ID    = 3,
                    Title = "40 Year Old Virgin",
                    Genre = new Model.Genre()
                    {
                        ID   = 2,
                        Name = "Comedy"
                    },
                    Actors = new List <Model.Actor>
                    {
                        new Model.Actor
                        {
                            ID        = 1,
                            FirstName = "Paul",
                            LastName  = "Rudd"
                        },
                        new Model.Actor
                        {
                            ID        = 2,
                            FirstName = "Jason",
                            LastName  = "Siegel"
                        }
                    },
                    Year = 2005
                }
            };

            ActorList = new List <Model.Actor>
            {
                new Model.Actor
                {
                    ID        = 1,
                    FirstName = "Paul",
                    LastName  = "Rudd"
                },
                new Model.Actor
                {
                    ID        = 2,
                    FirstName = "Jason",
                    LastName  = "Siegel"
                },
                new Model.Actor
                {
                    ID        = 3,
                    FirstName = "Radha",
                    LastName  = "Mitchell"
                }
            };

            GenreList = new List <Model.Genre>
            {
                new Model.Genre
                {
                    ID   = 1,
                    Name = "Action"
                },
                new Model.Genre
                {
                    ID   = 2,
                    Name = "Comedy"
                },
                new Model.Genre
                {
                    ID   = 3,
                    Name = "Sci-Fi"
                },
                new Model.Genre
                {
                    ID   = 4,
                    Name = "Horror"
                }
            };

            Stats = new Model.Statistics();
            MovieList.ForEach(movie =>
            {
                Stats.ActorsPerMovie.Add(movie.Title, movie.Actors.Count());
            });

            int numActors;

            GenreList.ForEach(genre =>
            {
                // for each actor, determine if they have been in a movie of the genre
                var actors = ActorList.Where(actor => MovieList.Any(movie => movie.Genre.ID == genre.ID &&
                                                                    movie.Actors.Any(c => c.ID == actor.ID))).ToList();
                numActors = actors.Count;
                Stats.ActorsInGenre.Add(genre.Name, actors);
                Stats.ActorsPerGenre.Add(genre.Name, numActors);
            });

            int numMovies;

            ActorList.ForEach(actor =>
            {
                numMovies = MovieList.Count(movie => movie.Actors.Any(a => a.ID == actor.ID));
                Stats.MoviesPerActor.Add(actor.FirstName + " " + actor.LastName, numMovies);
            });

            GenreList.ForEach(genre =>
            {
                numMovies = MovieList.Count(movie => movie.Genre.ID == genre.ID);
                Stats.MoviesPerGenre.Add(genre.Name, numMovies);
            });

            Stats.NumberOfActors = ActorList.Count();
            Stats.NumberOfMovies = MovieList.Count();
            Stats.Genres         = GenreList.Select(genre => genre.Name).ToList();
        }