【发布时间】:2009-04-28 22:29:31
【问题描述】:
对于我的asp.net mvc项目中的一个用户对象,我写了一个自定义的modelbinder来检查密码是否有效以及是否输入了两个匹配的密码等。
登录名需要是唯一的,我想知道我是否可以在模型绑定器中检查它,或者这被认为是不好的做法?
问题是绑定器在你到达控制器之前就被调用了,所以我会有两个我的 dataContext 实例浮动,因此有多个到数据库的连接,我想我可以为此设置一个工厂.
这是我现在在控制器中所做的代码 sn-p:
// POST: /Users/Create
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(Users user)
{
myDataContext db = new myDataContext();
if (!ViewData.ModelState.IsValid)
{
return View(user);
}
Users testUser = db.Users.SingleOrDefault(p => p.LoginNaam == user.LoginNaam);
if (testUser != null) { //Error stuff here }
}
【问题讨论】:
标签: asp.net-mvc model-binding imodelbinder