利用mvc 模型绑定验证方法验证普通类对象数据是否合法
- 新建抽象类 添加 IsValid 方法 包含两个重载
public abstract class ValidBase
{
/// <summary>
/// 验证数据是否合法
/// </summary>
/// <param name="results">输出参数 包含错误提示信息</param>
/// <returns></returns>
public bool IsValid(out ICollection<ValidationResult> results)
{
ValidationContext validation = new ValidationContext(this);
results = new List<ValidationResult>();
return Validator.TryValidateObject(this, validation, results, true);
}
/// <summary>
/// 验证数据是否合法
/// </summary>
/// <returns></returns>
public bool IsValid()
{
ValidationContext validation = new ValidationContext(this);
var results = new List<ValidationResult>();
return Validator.TryValidateObject(this, validation, results, true);
}
}
- 新建类继承自 ValidBase 并为需要验证的属性添加 特性
public class Person: ValidBase
{
[Required]
public string name { get; set; }
}
可以使用mvc提供的所有验证特性,也可以根据需要自行扩展只需在需要的属性上加入标签即可