public ActionResult <List <BeaverLiteAPI> > Get( [FromQuery] string FirstName, [FromQuery] string LastName, [FromQuery] string Town, [FromQuery] string Lodge, [FromQuery] string Leader) { var allBeavers = _beaversRepository.AllBeavers().OrderBy(b => b.Id).ToList(); if (FirstName != null) { allBeavers = allBeavers.FindAll(x => x.FirstName == FirstName); } if (LastName != null) { allBeavers = allBeavers.FindAll(x => x.LastName == LastName); } if (Town != null) { allBeavers = allBeavers.FindAll(x => x.Town == Town); } if (Lodge != null) { allBeavers = allBeavers.FindAll(x => x.Lodge == Lodge); } if (Leader != null && Leader.ToLower() == "true") { allBeavers = allBeavers.FindAll(x => x.IsLodgeLeader == true); } // return a status code 404 if there are no objects to return to the API consumer if (allBeavers.Count == 0) { return(NotFound()); } // BeaverLiteAPI is a simplified version of Beaver that is suitable for serving to // the API consumer (it does not contain DOB or Parent information) List <BeaverLiteAPI> beavers = new List <BeaverLiteAPI>(); foreach (Beaver element in allBeavers) { BeaverLiteAPI nextBeaverToAdd = new BeaverLiteAPI { FirstName = element.FirstName, LastName = element.LastName, Town = element.Town, Lodge = element.Lodge, IsLodgeLeader = element.IsLodgeLeader }; beavers.Add(nextBeaverToAdd); } return(beavers); }
// // define routes public IActionResult Index() { var beavers = _beaversRepository.AllBeavers().OrderBy(b => b.Id); string loggedInUser = ""; if (_signInManager.IsSignedIn(User)) { loggedInUser = _userManager.GetUserName(User); } // create a new instance of the HomeViewModel class and populate the properties var homeViewModel = new HomeViewModel() { Beavers = beavers.ToList(), Title = "89th Leicestershire Beaver Scouts Directory", User = loggedInUser }; return(View(homeViewModel)); }