예제 #1
0
        public ActionResult CheckPassword(RegisterModel model, string passwordHash, string emailHash)
        {
            ViewBag.EmailHash = emailHash;
            ViewBag.PasswordHash = passwordHash;

            if (!ModelState.IsValid)
                return View(model);

            try
            {
                USER.Register(model.Name, model.Password, passwordHash, model.Email, emailHash, "中国", "山东省", "青岛市", "第二中学", "我是神犇", "王强松");
            }
            catch (PasswordMismatchException)
            {
                ModelState.AddModelError("Password", "输入的密码与注册时不匹配");
                return View(model);
            }
            catch (EmailMismatchException)
            {
                return RedirectToAction("Error", "Shared", new { msg = "验证邮件非法" });
            }

            return View("Registered", model);
        }
예제 #2
0
 public ActionResult ValidateEmail(string name, string password, string email, string emailHash)
 {
     RegisterModel model = new RegisterModel
     {
         Name = name,
         Email = email,
     };
     ViewBag.EmailHash = emailHash;
     ViewBag.PasswordHash = password;
     return View("CheckPassword", model);
 }
예제 #3
0
        public ActionResult Register(RegisterModel model)
        {
            if (!ModelState.IsValid)
                return View(model);
            if (USER.IsNameExisted(model.Name))
            {
                ModelState.AddModelError("Name", "用户名已存在");
                return View(model);
            }

            if (USER.IsEmailExisted(model.Email))
            {
                ModelState.AddModelError("Email", "Email已被使用");
                return View(model);
            }

            try
            {
                string returnUrl = "http://" + Request.Headers["Host"] + Url.Action("ValidateEmail", "User");
                USER.SendValidationEmail(model.Name, model.Password, model.Email, returnUrl);
            }
            catch
            {
                ModelState.AddModelError("Email", "无法发送到此邮箱");
                return View(model);
            }
            return View("CheckEmail", model);
        }