我在ASP.NET MVC 2.0中验证有问题.我在Controller中使用相同的Action来执行用户请求.
例如:
public ActionResult Index(ReportModel model)
{
if (!model.IsInitialDisplay && ModelState.IsValid)
{
model.Result = service.GetResult(model);
}
return View(model);
}
Run Code Online (Sandbox Code Playgroud)
在ReportModel中,我定义了一个标志IsInitialDisplay来确定页面是否初始显示:
public class ReportModel
{
[Required(ErrorMessage = "*")]
public string Criteria { get; set; }
public bool IsInitialDisplay { get; set; }
public ReportResult Result { get; set; }
public ReportModel()
{
IsInitialDisplay = true;
}
}
Run Code Online (Sandbox Code Playgroud)
在View中,我使用以下代码:
<% using (Html.BeginForm())
{ %>
<table>
<tr>
<th>
Criteria:
</th>
<td>
<%= Html.TextBox("Criteria", "") %>
<%= Html.ValidationMessage("Criteria") %>
</td>
</tr>
</table> …Run Code Online (Sandbox Code Playgroud)