/// <summary> /// 将验证邮件的验证码写入数据库 /// </summary> /// <param name="param"></param> public void SendAuthEmail(SendAuthEmailParameter param) { using (var context = base.CreateUserContext()) { if (param.Kind != AuthEmailKind.ChangeEmail && !context.Accounts.Any(t => t.AppID == param.AppID && t.Email == param.Email)) { throw new InvalidInvokeException("Email不存在"); } string userName = context.Accounts.Where(t => t.AppID == param.AppID && t.RowID == param.UserID).Select(t => t.UserName).Single(); Guid authCode = Guid.NewGuid(); switch (param.Kind) { case AuthEmailKind.SignUp: case AuthEmailKind.ChangeEmail: Utility.SendVerifyEmail(param.AppID, userName, param.Email, authCode); break; case AuthEmailKind.FindPassword: Utility.SendFindPwdEmail(param.AppID, userName, param.Email, authCode); break; } var entity = new EmailAuth(); EntityMapper.Map <SendAuthEmailParameter, EmailAuth>(param, entity); entity.AuthKey = authCode.ToString(); entity.CreateDate = DateTime.Now; entity.Status = (int)ActivationStatus.NotActive; context.EmailAuths.Add(entity); context.SaveChanges(); } }
public void SendAuthEmail(SendAuthEmailParameter param) { mgr.SendAuthEmail(param); }