我是一个流利的验证员,如下所示
[Validator(typeof(testvalidator))]
public class test
{
.....
}
public class testvalidator: AbstractValidator<test>
{
public testvalidator()
{
Custom(testvalidationmethod);
}
public ValidationFailure testvalidationmethod(test t)
{
return ValidationFailure("","error occurred in test validation method ");
}
}
用法
testvalidator tv = new testvalidator();
var result =tv.(test);
我可以在result.Errors
中看到错误消息。但我想在视图上显示错误消息。我使用Html.ValidationSummary()
和true
尝试了false
。但是没有用。需要做什么才能在视图上显示?我在看tutorial。但它显示了如何在console
上显示,这在实际应用中几乎不需要。我如何使它工作?
答案 0 :(得分:4)
有一个名为AddToModelState
的方法,需要调用该方法才能将错误添加到ModelState
。之后,错误开始出现在视图中。
用法
public ActionResult DoSomething() {
var customer = new Customer();
var validator = new CustomerValidator();
var results = validator.Validate(customer);
results.AddToModelState(ModelState, null);
return View();
}
以上来源fluentvalidation on github。查看手动验证。