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: }