Files
Vidly2/Vidly/Controllers/MoviesController.cs

86 lines
2.2 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Vidly.Models;
using Vidly.ViewModels;
namespace Vidly.Controllers
{
public class MoviesController : Controller
{
List<Movie> movies = null;
public MoviesController()
{
movies = new List<Movie>
{
new Movie{Name="Never say never again", Id=1},
new Movie{Name="Doctor Zivago",Id=2},
new Movie{Name="Hånkentomtarna",Id=3}
};
}
// GET: Movies
public ActionResult Random()
{
var movie = new Movie() { Name = "Shrek!" };
var customers = new List<Customer>
{
new Customer {Name="Customer 1"},
new Customer {Name="Customer 2"}
};
//var viewResult = new ViewResult();
//viewResult.ViewData.Model = movie;
var viewModel = new RandomMovieViewModel()
{
Movie = movie,
Customers = customers
};
return View(viewModel);
//return View(movie);
//return Content("Hello World");
//return HttpNotFound();
//return new EmptyResult();
//return RedirectToAction("Index", "Home",new { page = 1, sortBy = "name" });
}
public ActionResult Edit(int id)
{
return Content("id=" + id);
}
public ActionResult Index(int? pageIndex, string sortBy)
{
if (!pageIndex.HasValue)
pageIndex = 1;
if (string.IsNullOrWhiteSpace(sortBy))
sortBy = "Name";
return Content($"pageIndex={pageIndex}&sortBy={sortBy}");
}
public ActionResult Movies()
{
var viewModel = new MoviesViewModel()
{
Movies = movies
};
return View(viewModel);
}
[Route("movies/released/{year}/{month:regex(\\d{2}):range(1,12)}")]
public ActionResult ByReleaseDate(int year, int month)
{
return Content(year + "/" + month);
}
}
}