gpt4 book ai didi

asp.net-mvc - 如何[以及在哪里]使用 ModelBinder 实现验证

转载 作者:行者123 更新时间:2023-12-02 02:36:39 26 4
gpt4 key购买 nike

我正在使用 ASP.NET MVC、MySQL 和 NHibernate 开发一个小网站。

我有一个联系人类:

[ModelBinder(typeof(CondicaoBinder))]
public class Contact {
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual int Age { get; set; }
}

还有一个模型绑定(bind)器:

public class ContactBinder:IModelBinder {
public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) {
Contact contact = new Contact ();
HttpRequestBase form = controllerContext.HttpContext.Request;

contact.Id = Int16.Parse(form["Id"]);
contact.Name = form["Name"];
contact.Age = Int16.Parse(form["Age"]);

return contact;
}
}

此外,我还有一个 View ,其中包含用于更新我的数据库的表单,使用此操作:

public ActionResult Edit([ModelBinder(typeof(ContactBinder))] Contact contact) {
contactRepo.Update(contact);

return RedirectToAction("Index", "Contacts");
}

到这里为止,一切正常。但在更新我的联系人之前,我必须实现表单验证。

我的问题是:我应该在哪里实现这种验证?在 ActionResult 方法中还是在 Model Binder 中?还是其他地方?

非常感谢。

最佳答案

看看 Steve Sanderson 的 XVAL。

您的业务对象是您的业务逻辑应该应用的地方。

善良

XVal

关于asp.net-mvc - 如何[以及在哪里]使用 ModelBinder 实现验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1306731/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com