通过调用 WithErrorCode
我们可以把自定义的错误代码跟验证规则关联在一起
public class PersonValidator : AbstractValidator<Person>
{
public PersonValidator()
{
RuleFor(person => person.Surname).NotNull().WithErrorCode("ERR1234");
RuleFor(person => person.Forename).NotNull();
}
}
同样的我们也可以通过 ValidationFailure来获取到ErrorCode
class Program
{
static void Main(string[] args)
{
var validator = new PersonValidator();
var result = validator.Validate(new Person());
foreach (var failure in result.Errors)
{
Console.WriteLine($"Property: {failure.PropertyName} Error Code: {failure.ErrorCode}");
}
}
}
上面的代码将出输如下的结果
Property: Surname Error Code: ERR1234
Property: Forename Error Code: NotNullValidator
Error code 是用来决定验证器的默认错误消息。 从高级别来看
WithErroCode("NotNullValidator")
示例:
RuleFor(person => person.Surname).NotNull().WithErrorCode("NotEmptyValidator");
//错误消息从 'Surname' 不能为Null。 变成了 'Surname' 不能为空。