public IActionResult Edit(int Id, Model.Requests.UserUpdateRequest request)
        {
            var updatedUser = usersService.UpdateUser(Id, request);

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

            return(RedirectToAction(nameof(Index)));
        }
Пример #2
0
        public async Task <User> Update(int UserId, Model.Requests.UserUpdateRequest request)
        {
            var fullUrl = apiUrl + "/" + UserId;

            try
            {
                return(await fullUrl.PutJsonAsync(request).ReceiveJson <User>());
            }
            catch (FlurlHttpException ex)
            {
                var error = await ex.GetResponseJsonAsync <ErrorModel>();

                throw ex;
            }
        }
        private async void btnSave_Click(object sender, EventArgs e)
        {
            if (ValidateChildren())
            {
                try
                {
                    var checkedRoles = clbRoles.CheckedItems.Cast <Model.Role>().Select(i => i.ID).ToList();

                    List <int> uncheckedRoles = new List <int>();
                    for (int i = 0; i < clbRoles.Items.Count; i++)
                    {
                        if (!clbRoles.GetItemChecked(i))
                        {
                            int RoleID = clbRoles.Items.Cast <Model.Role>().ToList()[i].ID;
                            uncheckedRoles.Add(RoleID);
                        }
                    }

                    var request = new Model.Requests.UserUpdateRequest
                    {
                        FirstName                                     = Convert.ToString(txtFirstName.Text),
                        LastName                                      = Convert.ToString(txtLastName.Text),
                        Username                                      = Convert.ToString(txtUsername.Text),
                        Email                                         = Convert.ToString(txtEmail.Text),
                        PhoneNumber                                   = Convert.ToString(txtPhoneNumber.Text),
                        Image                                         = pbUserImage.Image != null?ImageHelper.SystemDrawingToByteArray(pbUserImage.Image) : null,
                                                        Roles         = checkedRoles,
                                                        RolesToDelete = uncheckedRoles
                    };

                    await _apiService.Update <Model.User>(_ID, request);

                    MessageBox.Show("Success", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                catch
                {
                    MessageBox.Show("Error");
                }
            }
        }