【发布时间】:2020-09-16 02:06:00
【问题描述】:
我在表单上有两个名称不同的提交按钮。在控制器中 我有一个 HttpPost 操作方法,当单击两个提交按钮中的任何一个时,我都会调用它。下面是 action 方法的内部结构:
public ActionResult Save(Document model){
if(Request["btnSave"]!=null){
if (ModelState.IsValid){
//go ahead and save the model to db
}
}else{//I don't need the model to be validated here
//save the view values as template in cache
}
}
因此,当单击名称为“btnSave”的按钮时,我需要先验证模型,然后再将其保存到数据库,但如果单击另一个按钮,我不需要任何验证,因为我只是将表单值保存在缓存以稍后将其回调。显然,在这种情况下我不需要验证任何东西。我使用流畅的验证。我的问题是无论我按哪个按钮都会收到警告。我可以控制 FV 何时验证模型吗?
【问题讨论】:
-
是否需要在提交表单时阻止客户端验证或在操作执行后返回视图?
-
在动作执行后返回的视图中?
-
我不确定我是否理解您的目标:您想阻止在第二个按钮单击情况下执行任何服务器端验证规则?
-
是的,点击第二个按钮时我不需要验证。
标签: asp.net-mvc fluentvalidation