public IActionResult GetMoviessForHero(int id)
        {
            var hero = context.Heroes
                       .Include(d => d.FeaturedMovies)
                       .SingleOrDefault(d => d.Id == id);

            if (hero == null)
            {
                return(NotFound());
            }

            var result = new DataResultMovie()
            {
                Data = hero.FeaturedMovies.ToList()
            };

            return(Ok(result));
        }
Beispiel #2
0
        public IActionResult GetMoviessForVillain(int id)
        {
            var villain = context.Villains
                          .Include(d => d.FeaturedMovies)
                          .SingleOrDefault(d => d.Id == id);

            if (villain == null)
            {
                return(NotFound());
            }

            var result = new DataResultMovie()
            {
                Data = villain.FeaturedMovies.ToList()
            };

            return(Ok(result));
        }
Beispiel #3
0
        public DataResultMovie GetMovies(string title, int?phase, string sort, string dir = "asc")
        {
            IQueryable <Movie> query = context.MarvelMovies;

            if (!string.IsNullOrWhiteSpace(title))
            {
                query = query.Where(m => m.Title == title);
            }
            if (phase > 0)
            {
                query = query.Where(m => m.Phase == phase);
            }
            if (!string.IsNullOrWhiteSpace(sort))
            {
                switch (sort)
                {
                case "title":
                    if (dir == "asc")
                    {
                        query = query.OrderBy(m => m.Title);
                    }
                    else if (dir == "desc")
                    {
                        query = query.OrderByDescending(m => m.Title);
                    }
                    break;

                case "IMDBScore":
                    if (dir == "asc")
                    {
                        query = query.OrderBy(m => m.IMDBScore);
                    }
                    else if (dir == "desc")
                    {
                        query = query.OrderByDescending(m => m.IMDBScore);
                    }
                    break;

                case "ReleaseYear":
                    if (dir == "asc")
                    {
                        query = query.OrderBy(m => m.ReleaseYear);
                    }
                    else if (dir == "desc")
                    {
                        query = query.OrderByDescending(m => m.ReleaseYear);
                    }
                    break;

                case "Phase":
                    if (dir == "asc")
                    {
                        query = query.OrderBy(m => m.Phase);
                    }
                    else if (dir == "desc")
                    {
                        query = query.OrderByDescending(m => m.Phase);
                    }
                    break;

                case "TimeLineOrder":
                    if (dir == "asc")
                    {
                        query = query.OrderBy(m => m.TimeLineOrder);
                    }
                    else if (dir == "desc")
                    {
                        query = query.OrderByDescending(m => m.TimeLineOrder);
                    }
                    break;
                }
            }
            var result = new DataResultMovie()
            {
                Data = query.Include(v => v.Villain).Include(h => h.Hero).ToList()
            };

            return(result);
        }