问题标签 [fluentvalidation-2.0]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
634 浏览

validation - 使用 FluentValidation 验证字段集合(而不是验证器模型)

我试图查看是否有一种方法可以使用 FluentValidation,而无需为我的应用程序中的每个对象类型显式创建验证模型。

这在技术上和目前是否可行?

更新

换句话说,FluentValidation 是否可以在没有 IValidator 上下文的情况下验证规则?相反,我想传入要验证的项目实例并使用即时构建的验证规则。

解决

我能够通过一种黑客解决方案来解决。以下是我所做的基本细节:

1)我创建了一个类(GenericModel),它具有代表模型中属性的对象集合。2)我创建了一个继承自 AbstractValidator 的验证器类。3) 基于 GenericModel 的“属性对象”集合 + 关于每个属性的验证规则和错误消息的附加元数据,我能够在运行时添加 FluentValues 规则。4)。在 EditForm 我处理了 OnSubmit 事件。在那个事件处理程序中,我通过 FluentValidation 的 ValidateAsync() 方法执行验证。5)。最后,我遍历验证结果并使用适当的 CSS、错误消息、突出显示...等更新每个字段。

0 投票
1 回答
596 浏览

fluentvalidation - 在 fluentValidation 中使用必须

我正在使用 FluentValidation 进行服务器端验证。现在我想使用 must 调用一个函数。

这是表单代码片段:

我应该对下面的代码进行哪些更改以调用函数 SpecificationMustBeUnique ?

提示: 1 - CategoyId 和 Caption 的组合应该是唯一的 2 - 提交表单时没有进行验证(提交表单时没有进行验证)

0 投票
1 回答
2451 浏览

c# - Azure 函数中的验证筛选器

问题

我正在使用流利的验证进行模型验证,我希望它由 ValidationFilter 在 azure 函数中完成。我已经在 asp.net 核心应用程序中做到了,但我不知道如何在 azure 函数中做到这一点

代码

我的验证器

验证模型操作过滤器

启动

之后像这样将它添加到 startup.cs 类中

我在 azure 函数中尝试过,但其中有不同的类和接口。

0 投票
2 回答
1033 浏览

asp.net-core - 如何使用 Fluent Validation for .Net core 应用客户端验证

.Net Core 3.0 MVC 视图。需要申请 - 以下模型的客户端验证。

尝试如下:

型号:人

验证规则:

遵循文档,它显示“验证器”属性,但我在命名空间中找不到。

https://docs.fluentvalidation.net/en/latest/mvc5.html

0 投票
1 回答
862 浏览

c# - FluentValidator 如何确定默认使用的显示名称?

我正在使用 .NET Core 中的 FluentValidator。在大多数情况下,一切都运行良好,但我注意到在处理复杂类型时,FluentValidator 会显示完整的属性名称。例如,假设我有一个名为 Address 的类,其中包含 Street、City、State 和 Zip 属性。现在假设我有一个由名为 Physical Address 的模型属性支持的表单。如果我要求街道,Fluent 会显示以下验证错误:

'Physical Address. Street' must not be empty.

我更喜欢它只是说“街道”不能为空,因为我可能在页面上有多个地址字段,所以仅显示“街道”还不够具体。但我宁愿让它说:

'Physical Address Street' must not be empty.(字地址后没有句点)

FluentValidation 给出的全局覆盖显示名称的示例在 Startup.cs 中添加:

覆盖示例有效,但使用此(减去 foo 部分)会显示此验证错误:

'Street' must not be empty.(我不想要的东西,因为它太通用了)

我需要知道的是 lambda 内部的哪些逻辑会产生与默认行为完全相同的结果(即Physical Address. Street,而不仅仅是Street)。一旦我知道了这一点,我就可以用一个简单的defaultValue.Replace(".",""). 谢谢!

0 投票
1 回答
122 浏览

c# - 如何对可空字符串使用流畅的验证?

我有以下代码引发空检查异常:

但是当 TestString 为 null 时,上面的代码会抛出 Object null 引用异常。

我的要求是当“OtherArray”有值时,“TestString”必须等于“tiktok”,此时应显示无效的TestString Invalid错误消息。

当“OtherArray”为空或为空时,无需检查“TestString”。有人可以帮忙吗?

0 投票
1 回答
88 浏览

c# - c# Fluent Validation RuleFor

如果可能的话,我试图找到使用 Fluent Validation 的验证器类 (MediatR)。像这样的东西:

当设置手表CountOffset(即使我知道它是处理程序)看不到它。任何线索如何查看价值?我问的原因是这似乎是何时条件,而程序属于何时块。无论哪种方式都想知道这些变量在断点时是否可以查看。.Net Core 3.1 vs2019