1: using System;
2: using System.Collections.Generic;
3: using System.Linq;
4: using System.Web.Mvc;
5: using Part2_AutoComplete.Web.Models;
6:
7: namespace Part2_AutoComplete.Web.Controllers {
8:
9: public class HomeController : Controller {
10:
11: [HttpGet]
12: public ActionResult Index() {
13: return View(new Manufacturer{Id = 1, Name = "Aston Martin"});
14: }
15:
16: [HttpPost]
17: public ActionResult Index(Manufacturer manufacturer) {
18: ViewBag.Message = string.Format("You selected \"{0}\" and sent it to the server!", manufacturer.Name);
19: return View();
20: }
21:
22: [HttpPost]
23: public JsonResult GetManufacturers() {
24: string searchValue = Request.Params["filter[filters][0][value]"];
25: IList<Manufacturer> manufacturers = BuildManufacturersList()
26: .Where(x => x.Name.StartsWith(searchValue, StringComparison.InvariantCultureIgnoreCase)).ToList();
27: return Json(manufacturers);
28: }
29:
30: private IList<Manufacturer> BuildManufacturersList() {
31: IList<Manufacturer> manufacturers = new List<Manufacturer>();
32: manufacturers.Add(new Manufacturer {Id = 1, Name = "Aston Martin"});
33: manufacturers.Add(new Manufacturer {Id = 2, Name = "Audi"});
34: manufacturers.Add(new Manufacturer {Id = 3, Name = "Buggati"});
35: manufacturers.Add(new Manufacturer {Id = 4, Name = "BMW"});
36: manufacturers.Add(new Manufacturer {Id = 5, Name = "Chevrolet"});
37: manufacturers.Add(new Manufacturer {Id = 6, Name = "Ferrari"});
38: manufacturers.Add(new Manufacturer {Id = 7, Name = "Ford"});
39: manufacturers.Add(new Manufacturer {Id = 8, Name = "Lamborghini"});
40: manufacturers.Add(new Manufacturer {Id = 9, Name = "Mazda"});
41: manufacturers.Add(new Manufacturer {Id = 10, Name = "McLaren"});
42: manufacturers.Add(new Manufacturer {Id = 11, Name = "Mercedes Benz"});
43: manufacturers.Add(new Manufacturer {Id = 12, Name = "Porsche"});
44: return manufacturers;
45: }
46: }
47: }