gpt4 book ai didi

c# - Fluent 验证在第一次失败后停止

转载 作者:行者123 更新时间:2023-12-04 18:02:15 25 4
gpt4 key购买 nike

我已经知道(就像在另一个问题 Using CascadeMode.StopOnFirstFailure on a validator level 中很好地解释的那样)Fluent Validation 的级联模型仅适用于规则级别,而不适用于验证器级别。

我有这样的任务:

RuleFor(x => x.Name)
.NotNull()
.Length(1, 128)
.Must(ChkInput);

When(x => x.CompanyName != "..." ,() =>
{
RuleFor(x => x)
...
});

如果第一个 RuleFor 出现错误,我不想验证第二个 RuleFor。主要是因为我正在验证页面中的输入字段,我更喜欢一个一个地显示错误。

我没有办法将第一个验证规则与第二个验证规则合并,因为有不同的概念,由同一页面获得,但不同。

所以我想了解的是:只有当第一个规则没有失败时,才有办法启动第二个验证规则?或者也许我没有正确使用流畅的验证,即使我从同一页面检索我的所有参数,我也必须将它们分开并使用两个(或更多,根据概念的数量)不同的验证器?

最佳答案

我遇到了类似的问题。我有两种类型的验证错误,我想仅在第一组错误中没有错误时才显示第二组错误。为实现这一点,我将两组不同的错误分成单独的验证类,并仅在第一个类没有错误返回时才调用第二个类。

关于c# - Fluent 验证在第一次失败后停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33106554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com