public async Task <IActionResult> Edit(EditAppUserCommand vm)
        {
            List <string> errors = await _mediator.Send(vm);

            AddErrors(errors);

            // check if we have any errors and redirect if successful
            if (errors.Count == 0)
            {
                _logger.LogInformation("User edit operation successful");
                return(RedirectToAction(nameof(Index)).WithSuccess("User Editing done"));
            }

            // If we got this far, something failed, redisplay form
            ViewData["UserRole"] = new SelectList(SecurityConstants.GetRoles());
            return(View(vm));
        }
        public async Task <IActionResult> Edit(string id)
        {
            UserDTO uDTO = await _mediator.Send(new GetAppUserByIdQuery()
            {
                Id = id
            });

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

            EditAppUserCommand vm = _mapper.Map <EditAppUserCommand>(uDTO);

            ViewData["UserRole"] = new SelectList(SecurityConstants.GetRoles());
            return(View(vm));
        }