ale*_*poi 2 validation model code-first data-annotations asp.net-mvc-3
如何在模型上运行所有DataAnnotation验证?
我正在从代码构建一个模型实例,我没有没有模型状态绑定或任何东西.我只想对它进行所有验证......我正在使用EF CodeFirst.
public class Category
{
public int Id { get; set; }
[Required]
public string Name { get; set; }
}
cat = new Category();
if (cat.IsValid()) { /* blah */ } // i want something like this
Run Code Online (Sandbox Code Playgroud)
我知道这可能是一个愚蠢的问题,但我似乎无法在任何地方找到答案..
这类似于关于单元测试数据注释的这个问题.您可以添加类似于此的扩展方法:
public static class ValidationExtension {
public static bool IsValid<T>(this T model) where T: class {
var validationResults = new List<ValidationResult>();
var validationContext = new ValidationContext(model, null, null);
Validator.TryValidateObject(model, validationContext, validationResults, true);
return validationResults.Count == 0;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
751 次 |
| 最近记录: |