要在Asp.Net验证中添加自定义类,可以按照以下步骤进行操作:
public class CustomValidator : ValidationAttribute
{
public CustomValidator()
{
ErrorMessage = "自定义验证错误信息";
}
protected override ValidationResult IsValid(object value, ValidationContext validationContext)
{
// 在此处编写自定义验证逻辑
// 如果验证通过,返回 ValidationResult.Success
// 如果验证失败,返回 ValidationResult.ErrorMessage
}
}
public class MyModel
{
[CustomValidator]
public string MyProperty { get; set; }
}
@model MyModel
@using (Html.BeginForm())
{
@Html.LabelFor(m => m.MyProperty)
@Html.TextBoxFor(m => m.MyProperty)
@Html.ValidationMessageFor(m => m.MyProperty)
}
[HttpPost]
public ActionResult MyAction(MyModel model)
{
if (ModelState.IsValid)
{
// 处理成功逻辑
}
else
{
// 处理失败逻辑
}
}
在上述代码示例中,CustomValidator 类继承自 ValidationAttribute 类,并重写了 IsValid 方法来实现自定义验证逻辑。在模型类中使用 CustomValidator 类作为属性的特性,当表单提交时,Asp.Net 会自动进行验证,并将验证错误信息存储在 ModelState 对象中。在视图中使用 ValidationMessageFor 辅助方法来显示验证错误信息。在控制器中,可以通过 ModelState.IsValid 属性来判断是否验证通过,并进行相应的处理。
上一篇:ASP.NET验证属性