public async Task <IActionResult> UpdatePassword(int id, UserManagementUpdatePassword model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var userCredential = await _context.UserCredential.SingleOrDefaultAsync(m => m.Id == id);

                    var passwordSalt = Guid.NewGuid().ToString();
                    userCredential.PasswordSalt   = passwordSalt;
                    userCredential.HashedPassword = _cryptography.HashSHA256(model.Password + passwordSalt);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!UserExists(id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }
            ViewData["User"] = await _context.User.SingleOrDefaultAsync(m => m.Id == id);

            return(View(model));
        }
        public async Task <IActionResult> UpdatePassword(int id, UserManagementUpdatePassword model)
        {
            if (ModelState.IsValid)
            {
                var userCredential = await _context.UserCredential.SingleOrDefaultAsync(m => m.Id == id);

                var passwordSalt = Guid.NewGuid().ToString();
                userCredential.PasswordSalt   = passwordSalt;
                userCredential.HashedPassword = _cryptography.HashSHA256(model.Password + passwordSalt);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            ViewData["User"] = await _context.User.SingleOrDefaultAsync(m => m.Id == id);

            return(View(model));
        }