c# - 如何在 FluentValidator C# 中验证枚举

标签 c# fluentvalidation

我在 C# 中使用 FluentValidation 创建一个验证类,以验证我的 Account 类的 Type 属性是 类型AccountType 枚举。

正确的实现是什么:

RuleFor (account => account.Type)
             .IsInEnum (....)

最佳答案

我也问过自己同样的问题,然后用谷歌搜索并在此处找到了您的问题。 那并没有太大帮助。然而,它确实让我去查看了 github 上的源代码和单元测试,所以非常感谢。 https://github.com/JeremySkinner/FluentValidation/blob/master/src/FluentValidation.Tests/EnumValidatorTests.cs

我把这个放在这里是为了下一个提出同样问题的人。您不需要为 IsInEnum() 函数提供任何实现。此函数使用反射来确定规则中指定的属性的枚举类型,然后根据枚举的有效值验证该属性的值。

关于c# - 如何在 FluentValidator C# 中验证枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41510981/

相关文章:

c# - 当我尝试在 Visual Studio 2010 中添加 Web 服务时遇到问题

c# - 将旧版 .NET 集合迁移到其通用对应集合

asp.net - 正则表达式验证器不验证空文本框

c# - .NET Core WebAPI 中的 Fluent Validation 中间件是否足够,还是我应该再次在服务层中进行验证?

asp.net-mvc-4 - 使用 Fluent Validation 进行条件登录验证

c# - FluentValidation - 无代码重复的预验证/条件验证

c# - Xamarin 需要作为 commandParameter 从同一 xaml 的元素中选择项目

c# - waitany(Array) 实际上 'set' 是一个事件,还是只是返回有信号事件的索引

c# - 如何在继承中授予对选择性类方法的访问权限?

c# - FluentValidation 验证工厂和 Ninject DI 容器