Пример #1
0
        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);
        }
Пример #2
0
        //
        // 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));
        }