Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Microsoft.AspNetCore.Mvc;
- using System.Collections.Generic;
- using System.Linq;
- using Week2Opdracht1Administratie17079543.Models; //Pas het MVC-pattern toe door vanuit de Controller een Model mee te geven aan de View.
- // For more information on enabling MVC for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
- //17079543 Jurian Klas 2.D week 2 opdracht 1.
- namespace Week2Opdracht1Administratie17079543.Controllers
- {
- //deze Controller gebruikt het Model Student en System.Linq.
- //voorbeeld URL: https://localhost:xxxxx/StudentAdministratie/ZoekStudenten/j
- public class StudentAdministratieController : Controller
- {
- private List<Student> StudentenLijst;
- // GET: /<controller>/
- public IActionResult Index()
- {
- return View();
- }
- public IActionResult ZoekStudenten(string input)
- {
- //Je hoeft de lijst met studenten nog niet op te halen uit een database. Die mag je hard coded in de juiste action - method definiëren.
- StudentenLijst = new List<Student>()
- {
- new Student(){ Naam = "Jurian", AchterNaam = "PAAA", Leeftijd = 19},
- new Student(){ Naam = "Jeffrey", AchterNaam = "JBBB", Leeftijd = 21},
- new Student(){ Naam = "Paolo", AchterNaam = "JJJJ", Leeftijd = 23},
- new Student(){ Naam = "Muca", AchterNaam = "JAGCXGJ", Leeftijd = 20}
- };
- //als je niet controleert of input niet null mag zijn geeft VS error.
- if (input != null)
- {
- //gefilterde lijst.
- List<Student> StudentenGesorteerd = selecteerAchternaam(input);
- //Uitdaging 2: Zorg ervoor dat de View ook laat zien op welke letter is gezocht.
- ViewData["gebruikerInput"] = input;
- return View(StudentenGesorteerd);
- }
- else
- {
- //is voor nu even default..
- return ErrorBericht();
- }
- }
- //laat de ErrorBericht View zien.
- public IActionResult ErrorBericht()
- {
- return View("ErrorBericht");//verwijst naar de ErrorBericht view.
- }
- //geeft alleen de StudentenLijst waarvan achternaam begint met ingevoerde letter(s).
- //return een gefilterde lijst. is NIET hoofdlettergevoelig
- public List<Student> selecteerAchternaam(string input)
- {
- //Uitdaging 1: Gebruik LINQ in combinatie met de String.StartsWith Method voor het zoeken in de lijst.
- var result = from Student s in StudentenLijst
- where s.AchterNaam.StartsWith(input, System.StringComparison.OrdinalIgnoreCase) //om Case Sensitive te voorkomen.
- orderby s.AchterNaam
- select s;
- List<Student> gesorteerdeLijst = result.ToList();
- return gesorteerdeLijst;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement