コード例 #1
0
 private async Task<bool> AddAccount(RegisterViewModel model)
 {
     var entity = new Account();
     entity.Id = Guid.NewGuid();
     entity.Email = model.Email;
     entity.Name = model.AccountName;
     entity.Phone = model.Phone;
     entity.CreateDateTime = DateTime.Now;
     entity.Salt = Guid.NewGuid().ToString().Replace("-", "");
     entity.Password = UntilHelper.GetMd5HashCode(model.Password + entity.Salt);
     DataSource.Accounts.Add(entity);
     await DataSource.SaveChangesAsync();
     return true;
 }
コード例 #2
0
 public async Task<ActionResult> Register(RegisterViewModel model)
 {
     try
     {
         string message = string.Empty;
         if (!ModelState.IsValid || CheckRegister(model, out message))
         {
             model.Message = message;
             return View(model);
         }
         // 如果我们进行到这一步时某个地方出错,则重新显示表单
         var result = await AddAccount(model);
         if (result) return View("Login");
         model.Message = "注册失败";
         return View(model);
     }
     catch (Exception ex)
     {
         LogHelper.Instance.WriteError(ex, GetType(), MethodBase.GetCurrentMethod().Name);
         throw;
     }
 }
コード例 #3
0
 private bool CheckRegister(RegisterViewModel model, out string message)
 {
     message = string.Empty;
     var isEmail = DataSource.Accounts.Any(t => t.Email == model.Email);
     if (isEmail)
         message = "此邮箱己被注册";
     var isName = DataSource.Accounts.Any(t => t.Name == model.AccountName);
     if (isName)
         message = "此帐户名己被注册";
     var isPhone = DataSource.Accounts.Any(t => t.Phone == model.Phone);
     if (isPhone)
         message = "此手机号己被注册";
     return isEmail && isName && isPhone;
 }
コード例 #4
0
 public ActionResult Register()
 {
     var model = new RegisterViewModel { Message = string.Empty };
     return View(model);
 }