示例#1
0
        public async Task <IActionResult> UpdateUserRack(long id, UserRackDTO putUserRack)
        {
            if (id != putUserRack.RackId)
            {
                return(BadRequest());
            }

            var userRack = await _repository.GetRackByIdAsync(id);

            if (userRack == null)
            {
                return(NotFound());
            }

            userRack.Name = putUserRack.Name;

            try
            {
                await _repository.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException) when(!RackExists(id))
            {
                return(NotFound());
            }

            return(NoContent());
        }
示例#2
0
        public async Task <ActionResult <UserRackDTO> > CreateUserRack(string name)
        {
            var newRack = new Rack
            {
                Name = name
            };

            await _repository.AddRackAsync(newRack);

            var user        = this.User;
            var newUserRack = new RackUsers
            {
                RackId = newRack.Id
            };
            await _repository.AddRackUserAsync(user, newUserRack);

            var userRackDTO = new UserRackDTO
            {
                RackId = newUserRack.RackId,
                Name   = newRack.Name
            };

            return(CreatedAtAction(nameof(GetUserRacks), userRackDTO.RackId, userRackDTO));
        }