Dei*_*lan 7 c# asp.net asp.net-mvc client-side-validation asp.net-identity
使用Visual Studio 2013.4(Visual Studio 2013 Update 4)我创建了一个具有个人用户帐户身份验证配置的常规ASP.NET MVC 5项目.所有用户注册和登录功能已经由Visual Studio支持我,并且工作正常.
如何在注册页面上实现以下规则的客户端验证:没有已注册的用户使用相同的电子邮件?
Dei*_*lan 12
您可以使用RemoteAttribute通过服务器回调执行客户端验证.
1)将以下方法添加到AccountController:
[AllowAnonymous]
public async Task<JsonResult> UserAlreadyExistsAsync(string email)
{
var result =
await userManager.FindByNameAsync(email) ??
await userManager.FindByEmailAsync(email);
return Json(result == null, JsonRequestBehavior.AllowGet);
}
Run Code Online (Sandbox Code Playgroud)
2)添加Remote属性Email的财产RegisterViewModel类:
[Remote("UserAlreadyExistsAsync", "Account", ErrorMessage = "User with this Email already exists")]
public string Email { get; set; }
Run Code Online (Sandbox Code Playgroud)
"Account"服务控制器的名称在哪里,"UserAlreadyExistsAsync"是它的动作名称.
| 归档时间: |
|
| 查看次数: |
15793 次 |
| 最近记录: |