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; }
}
モデル バインダー:
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;
}
}
また、次のアクションを使用して、データベースを更新するためのフォームを含むビューがあります。
public ActionResult Edit([ModelBinder(typeof(ContactBinder))] Contact contact) {
contactRepo.Update(contact);
return RedirectToAction("Index", "Contacts");
}
ここまでは、すべて正常に機能しています。しかし、連絡先を更新する前に、フォームの検証を実装する必要があります。
私の質問は: この検証をどこに実装すればよいですか? ActionResult メソッドまたは Model Binder で? それともどこか?
どうもありがとうございました。