public async System.Threading.Tasks.Task <Result> Register(RegisterModel model) { Entities.Tables.Identity.User user = _mapper.Map <Entities.Tables.Identity.User>(model); return(await _transactionManager.ExecuteInImplicitTransactionAsync(async() => { IdentityResult result = await _userManager.CreateAsync(user, model.Password); if (!result.Succeeded) { return new Result() { ResponseStatusType = ResponseStatusType.Error, Message = ResponseMessageType.InternalError }; } /* * var confirmToken = await _userManager.GenerateEmailConfirmationTokenAsync(user); * * var emailConfirmUrl = urlsOptions.CurrentValue.Api * .AppendPathSegments("Auth", "ConfirmRegister") * .SetQueryParams(new {uid = user.Id, token = confirmToken}); * * * await emailSenderService.SendEmailByTemplateAsync( * model.Email, * "register.html", * new Dictionary<string, string> {{"[link]", emailConfirmUrl}} * ); */ return new Result() { ResponseStatusType = ResponseStatusType.Succeed }; })); }
public async System.Threading.Tasks.Task <DataResult <UserBaseModel> > Login(LoginModel model) { DataResult <UserBaseModel> result = new DataResult <UserBaseModel>(); Entities.Tables.Identity.User user = await _userManager.FindByEmailAsync(model.Email.Trim()); if (user == null || !(await _signInManager.CheckPasswordSignInAsync(user, model.Password, false)).Succeeded) { result.ResponseStatusType = ResponseStatusType.Error; result.Message = ResponseMessageType.UserNotAuthorized; } else { await _signInManager.RefreshSignInAsync(user); UserBaseModel userModel = _mapper.Map <UserBaseModel>(user); result.ResponseStatusType = ResponseStatusType.Succeed; result.Data = userModel; } return(result); }