我使用数据库优先和我通过ViewModel验证我的输入。但是,我想检查是否已经在db中使用了UserName
。我怎么做?这是多远我设法(我可以验证并保存):MVC - 如何检查用户名是否已被使用?
[Required]
[StringLength(50)]
[MinLength(3, ErrorMessage = "You must at least have 3 letters")]
public string UserName { get; set; }
而下面是在控制我的注册代码:
[HttpGet]
public ActionResult Register() {
return View();
}
[HttpPost]
public ActionResult Register(UserVIewModel reg) {
if (ModelState.IsValid)
{
var m = new User {
UserName = reg.UserName,
Email = reg.Email,
FirstName = reg.FirstName,
LastName = reg.LastName,
Password = reg.Password
};
db.Users.Add(m);
db.SaveChanges();
return RedirectToAction("Login");
}
return View();
}
正是我在寻找,谢谢。顺便说一句,有没有什么好的方法来返回“验证信息”? – Nyprez
有很多方法。一种方法是在ViewBag中设置验证消息,在视图中将其分配给可视控件。你可以谷歌样本。 – RajN
嗯,谢谢你的工作:) – Nyprez