示例#1
0
        public async Task <IActionResult> UpdateSource(int id, [FromBody] UpdateUserRoleDTO source)
        {
            try
            {
                if (source == null)
                {
                    return(BadRequest());
                }
                if (!ModelState.IsValid)
                {
                    return(BadRequest("Invalid model object"));
                }
                var sourceEntity = await _repositoryWrapper.UserRoleRepo.GetDataByIdAsync(id);

                if (sourceEntity == null)
                {
                    return(NotFound());
                }
                _mapper.Map(source, sourceEntity);
                _repositoryWrapper.UserRoleRepo.UpdateData(sourceEntity);
                await _repositoryWrapper.SaveAsync();

                return(Ok("Update successfully!"));
            }
            catch (Exception ex)
            {
                //_logger.LogError($"Something went wrong inside CreateSources action: {ex.Message}");
                if (ex.InnerException != null)
                {
                    return(BadRequest(ex.Message + "," + ex.InnerException.Message));
                }
                return(BadRequest(ex.Message));
            }
        }
        public async Task <IActionResult> UpdateUserRole(UpdateUserRoleDTO model)
        {
            try
            {
                var user = await UserManager.FindByEmailAsync(model.Email);

                if (user != null)
                {
                    if (model.Delete)
                    {
                        await UserManager.RemoveFromRoleAsync(user, model.Role);
                    }
                    else
                    {
                        await UserManager.AddToRoleAsync(user, model.Role);
                    }
                }
                return(Ok());
            }
            catch (Exception exception)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, $"Error: {exception.Message}"));
            }
        }