Пример #1
0
        public async Task <IActionResult> PostAsync([FromBody] CreatePetResource createPetResource)
        {
            Pet pet = null;

            // Figure out which kind of pet to create.
            switch (createPetResource.Type)
            {
            case PetType.CAT:
                pet = mapper.Map <CreatePetResource, Cat>(createPetResource);
                break;

            case PetType.DOG:
                pet = mapper.Map <CreatePetResource, Dog>(createPetResource);
                break;
            }

            if (pet == null)
            {
                return(BadRequest());
            }

            var result = await petService.CreateAsync(pet);

            if (result == null)
            {
                return(BadRequest());
            }

            var resource = mapper.Map <Pet, CreatedPetResource>(pet);

            return(Created($"/api/v1/pets/{resource.Id}", resource));
        }
Пример #2
0
        public async Task <int> Post([FromUri] int ownerId, PetDto pet)
        {
            var id = await _petService.CreateAsync(ownerId, pet.Name);

            return(id);
        }