在ASP.NET MVC 3中使用不显眼的验证,如果表单无效时采取措施,可以通过以下几个步骤实现:
在Model类中,可以使用DataAnnotations命名空间中的ValidationAttribute类来定义验证规则。例如,对于一个字符串属性,可以使用以下代码来添加必填和长度验证:
[Required]
[StringLength(50)]
public string Name { get; set; }
在Controller中,可以使用ModelState.IsValid属性来检查表单是否有效。如果表单无效,可以使用TempData属性来存储错误消息,并将用户重定向到表单页面。例如:
[HttpPost]
public ActionResult Create(MyModel model)
{
if (ModelState.IsValid)
{
// 保存数据并重定向到成功页面
}
else
{
// 将错误消息存储在TempData中
TempData["ErrorMessage"] = "表单无效";
// 重定向到表单页面
return RedirectToAction("Index");
}
}
在视图中,可以使用Html.ValidationMessageFor()方法来显示验证错误消息。例如:
@Html.ValidationMessageFor(model => model.Name)
如果要在表单无效时采取措施,可以在Controller中将错误消息存储在TempData属性中,并在视图中显示错误消息。例如:
[HttpPost]
public ActionResult Create(MyModel model)
{
if (ModelState.IsValid)
{
// 保存数据并重定向到成功页面
}
else
{
// 将错误消息存储在TempData中
TempData["ErrorMessage"] = "表单无效";
// 重定向到表单页面
return RedirectToAction("Index");
}
}
在视图中,可以使用以下代码来显示错误消息:
@if (TempData["ErrorMessage"] != null)
{
<div class="alert alert-danger">@TempData["ErrorMessage"]</div>
}
这样,在表单无效时,就可以显示错误消息,并采取相应的措施。
领取专属 10元无门槛券
手把手带您无忧上云