【问题标题】:fluent validation add validation errors mannually and rethrow errors流利的验证手动添加验证错误并重新抛出错误
【发布时间】:2013-07-26 20:42:09
【问题描述】:

我已经定义了一个:

IValidator<SomeClass> _myValidator

我能做到:

_myValidator.ValidateAndThrow(someObject);

相反,我想:

var errors = _myValidator.Validate(entity);

手动添加一些错误,然后重新抛出错误。这可能吗?

【问题讨论】:

    标签: c# fluentvalidation


    【解决方案1】:

    如果要将错误存储在变量中,则必须返回错误或错误列表,而不是抛出它们。

    IList<Exception> ValidateAndThrow(object someObject){
    
        IList<Exception> errors = new List<Exception>();
    
        try{
            SomethingGoesWrong();
        } catch (Exception e){
            errors.Add(e);
        }
    
        return errors;
    }
    

    【讨论】:

    • 我自己才意识到这一点。我使用了一些类似的东西:ValidationFailure test = new ValidationFailure("bla", "bla");错误。添加(测试);抛出新的 ValidationException(errors);
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-01
    • 2013-12-26
    • 2017-04-09
    • 1970-01-01
    • 1970-01-01
    • 2014-08-21
    相关资源
    最近更新 更多