Исходный код вики Сценарии
Редактировал(а) Alexandr Fokin 2023/05/15 17:00
Последние авторы
author | version | line-number | content |
---|---|---|---|
1 | |(% style="width:208px" %)Связанные валидации|(% style="width:1284px" %)((( | ||
2 | Имеется в виду ситуация, когда ошибка одной валидации прерывает выполнение группы других. | ||
3 | |||
4 | |(% style="width:134px" %)Cascade mode | ||
5 | [[https:~~/~~/docs.fluentvalidation.net/en/latest/cascade.html>>https://docs.fluentvalidation.net/en/latest/cascade.html]]|(% style="width:1031px" %)((( | ||
6 | Позволяет прервать цепочку валидаций, но только в рамках одного правила. | ||
7 | |||
8 | {{code language="c#"}} | ||
9 | RuleFor(x => x.Prop) | ||
10 | .Cascade(CascadeMode.Stop) | ||
11 | .NotNull() | ||
12 | .NotEqual("foo"); | ||
13 | {{/code}} | ||
14 | ))) | ||
15 | |(% style="width:134px" %)Dependent Rules | ||
16 | [[https:~~/~~/docs.fluentvalidation.net/en/latest/dependentrules.html>>https://docs.fluentvalidation.net/en/latest/dependentrules.html]]|(% style="width:1031px" %)((( | ||
17 | Позволяет указать делегат, код валидаций которых будет выполняться только в ситуации, когда правило выполнилось корректно. | ||
18 | |||
19 | {{code language="c#"}} | ||
20 | RuleFor(x => x.NullableStructProp) | ||
21 | .NotNull() | ||
22 | .DependentRules( | ||
23 | () => { | ||
24 | RuleFor(x => x.NullableStructProp!.value.StructProp) | ||
25 | .NotEmpty(); | ||
26 | } | ||
27 | ); | ||
28 | {{/code}} | ||
29 | ))) | ||
30 | |(% style="width:134px" %) |(% style="width:1031px" %) | ||
31 | |||
32 | |||
33 | ))) | ||
34 | |(% style="width:208px" %) |(% style="width:1284px" %) | ||
35 | |(% style="width:208px" %) |(% style="width:1284px" %) |