public async Task<IHttpActionResult> Register(UserIdentity userModel) { if (!ModelState.IsValid) { return BadRequest(ModelState); } IdentityResult result; if (!string.IsNullOrEmpty(userModel.OldPassword)) { ClaimsPrincipal principal = Request.GetRequestContext().Principal as ClaimsPrincipal; result = await _repo.ChangePassword(principal.Identity.GetUserId(), userModel.OldPassword, userModel.Password); } else { result = await _repo.RegisterUser(userModel); } IHttpActionResult errorResult = GetErrorResult(result); if (errorResult != null) { return errorResult; } return Ok(); }
public async Task<IdentityResult> RegisterUser(UserIdentity userModel) { ApplicationUser user = new ApplicationUser(userModel.UserName, userModel.email); user.SetPasswordHash(userModel.Password); user.SetPhoneNumber(userModel.phone, userModel.phoneType); //user.AddRole("user"); //user.SetEmail(userModel.email); //ApplicationUser user = new RavenUser(userModel.UserName); var result = await _userManager.CreateAsync(user); await _userManager.AddToRoleAsync(user.Id, "user"); await _userManager.SetPhoneNumberAsync(user.Id, userModel.phone); //var result = await _userManager.CreateAsync(user, userModel.Password); return result; }