我正在将电子邮件验证添加到使用WebSecurity会员资格的MVC4网站。
如果用户注册,我们会向他们发送一封包含链接的电子邮件。如果他们在确认注册之前尝试登录,则WebSecurity.Login()将失败。好的,这是合理的。
我需要该网站做的是确认它正在等待他们完成确认并通知他们。所以我的代码如下:
if (ModelState.IsValid && !WebSecurity.IsConfirmed(model.UserName))
{
// Inform the user
return RedirectToAction("ConfEmailSent");
}
控制器标有[Authorize]属性,操作本身标有[AllowAnonymous]。
重定向失败,但是如果我手动更改浏览器中的URL,它就可以正常工作。
这是一个MVC4错误还是我错过了什么?
答案 0 :(得分:0)
神秘解决了。真是令人尴尬的疏忽:我省略了return语句,并在几个地方调用了RedirectToAction()。呃我。