FluentValidation: настройка сообщения об ошибке со значениями из других свойств - PullRequest
0 голосов
/ 01 мая 2020

У меня есть это:

 RuleForEach(inputData => inputData.Loads).ChildRules(inputData => {
        inputData.RuleFor(load => load.Asnow).GreaterThanOrEqualTo(0).WithMessage("no negative snow allowed"));
.... etc

Теперь я хочу express в сообщении, о какой из нагрузок в коллекции Loads это сообщение.

"load" имеет свойство "LoadName", значение которого я хочу включить в сообщение, что-то вроде

$"{load.LoadName} no negative snow allowed" 

Как я могу это сделать?

1 Ответ

1 голос
/ 01 мая 2020

Использование перегрузки WithMessage(Func<T, string>):

RuleForEach(inputData => inputData.Loads)
    .ChildRules(inputData =>
    {
        inputData.RuleFor(load => load.Asnow).GreaterThanOrEqualTo(0).WithMessage(load => $"{load.LoadName} no negative snow allowed");
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...