Пример #1
0
        public async Task <IActionResult> UpdateUser(int id, [FromBody] UserForManipulation user)
        {
            User oldUser = await userService.FindUser(id);

            if (oldUser == null)
            {
                return(NotFound());
            }
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            if (oldUser.UserName != user.UserName)
            {
                if (await userService.FindUserByUserName(user.UserName) != null)
                {
                    ModelState.AddModelError("UserName", "User name already exist.");
                    return(BadRequest(ModelState));
                }
            }
            try
            {
                await userService.UpdateUser(user, oldUser);

                return(NoContent());
            }
            catch (Exception xcp)
            {
                return(StatusCode(500, xcp.InnerException.Message));
            }
        }
Пример #2
0
        public async Task <IActionResult> CreateUser([FromBody] UserForManipulation user)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            if (await userService.FindUserByUserName(user.UserName) != null)
            {
                ModelState.AddModelError("UserName", "User name already exist.");
                return(BadRequest(ModelState));
            }
            try
            {
                User newUser = await userService.AddUser(user);

                return(Created($"GetUser/{newUser.UserId}", newUser));
            }
            catch (Exception xcp)
            {
                return(StatusCode(500, xcp.InnerException.Message));
            }
        }