private async Task <bool> UpdateEngineer(ServiceEngineerViewModel serviceEngineer)
        {
            // Alterar usuario
            ApplicationUser user = await _userManager.FindByEmailAsync(serviceEngineer.Registration.Email);

            user.UserName = serviceEngineer.Registration.UserName;
            IdentityResult result = await _userManager.UpdateAsync(user);

            if (result.Succeeded == false)
            {
                result.Errors.ToList().ForEach((error) => ModelState.AddModelError(string.Empty, error.Description));
                return(result.Succeeded);
            }

            // Alterar senha
            string token = await _userManager.GeneratePasswordResetTokenAsync(user);

            IdentityResult passwordResult = await _userManager.ResetPasswordAsync(user, token, serviceEngineer.Registration.Password);

            if (passwordResult.Succeeded == false)
            {
                passwordResult.Errors.ToList().ForEach((error) => ModelState.AddModelError(string.Empty, error.Description));
                return(passwordResult.Succeeded);
            }

            // Alterar claims
            user = await _userManager.FindByEmailAsync(serviceEngineer.Registration.Email);

            MongoClaim     isActiveClaim     = user.Claims.SingleOrDefault(p => p.Type == "IsActive");
            IdentityResult removeClaimResult = await _userManager.RemoveClaimAsync(user, new Claim(isActiveClaim.Type, isActiveClaim.Value));

            IdentityResult addClaimResult = await _userManager.AddClaimAsync(user, new Claim(isActiveClaim.Type, serviceEngineer.Registration.IsActive.ToString()));

            return(true);
        }
 /// <summary>
 /// Creates a <see cref="Claim"/> object from a <see cref="MongoClaim"/>
 /// </summary>
 /// <param name="mongoClaim">A <see cref="MongoClaim"/>.</param>
 /// <returns> A <see cref="Claim"/>.</returns>
 public static Claim ToClaim(this MongoClaim mongoClaim)
 {
     return(new Claim(mongoClaim.Type, mongoClaim.Value, null, mongoClaim.Issuer));
 }