Exemple #1
0
        public async Task <IActionResult> Post(ApiCreatePhoneBook phoneBookModel)
        {
            try
            {
                var phoneBook = await _phoneBookService.CreatePhoneBookAsync(phoneBookModel.Name);

                return(CreatedAtRoute(
                           routeName: "PhoneBookGet",
                           routeValues: new { id = phoneBook.Id },
                           value: new { Name = phoneBook.Name }));
            }
            catch (NotFoundException)
            {
                return(new NotFoundResult());
            }
            catch (ValidateException ex)
            {
                return(new BadRequestObjectResult(ex.Message));
            }
        }
        public async Task <ActionResult <PhoneBookModels.PhoneBook> > GetAsync(string Name)
        {
            var pb = await PhonebookS.GetPhoneBookAsync(Name);

            if (pb != null)
            {
                return(pb);
            }
            else
            {
                (PhoneBookModels.PhoneBook phoneBook, List <ValidationError> errors) = await PhonebookS.CreatePhoneBookAsync(Name);

                if (errors.Count == 0)
                {
                    return(phoneBook);
                }
                else
                {
                    return(BadRequest(errors));
                }
            }
        }