C# 多个可能值的Fluentvalidation验证器
是否有任何内置函数来验证多个可能的通过/失败选项,类似于SQL in运算符 例如:在下面的代码中,我需要确保用户的状态必须为“活动”、“过期”、“阻止”等 对于用户角色,它应该是用户角色(“管理员”、“经理”、“查看者”…)C# 多个可能值的Fluentvalidation验证器,c#,fluentvalidation,C#,Fluentvalidation,是否有任何内置函数来验证多个可能的通过/失败选项,类似于SQL in运算符 例如:在下面的代码中,我需要确保用户的状态必须为“活动”、“过期”、“阻止”等 对于用户角色,它应该是用户角色(“管理员”、“经理”、“查看者”…) 公共类用户 { 公共字符串用户_状态{get;set;} 公共字符串用户角色{get;set;} } 公共类UpdateUserValidator:NullReferenceAbstractValidator { 公共UpdateUserValidator() { Rule
公共类用户
{
公共字符串用户_状态{get;set;}
公共字符串用户角色{get;set;}
}
公共类UpdateUserValidator:NullReferenceAbstractValidator
{
公共UpdateUserValidator()
{
RuleFor(user=>user.user_status).NotNull();
}
}
据我所知,没有内置的验证器来执行此操作
您可以使用.Must
和接受值的集合
类似的东西(当然,接受值的集合可以在变量中,并在must和message部分中使用)
或者您当然可以创建自己的自定义验证器。据我所知,没有内置的验证器可以这样做 您可以使用
.Must
和接受值的集合
类似的东西(当然,接受值的集合可以在变量中,并在must和message部分中使用)
当然,您也可以创建自己的自定义验证器
public class Users
{
public string user_status { get; set; }
public string user_role { get; set; }
}
public class UpdateUserValidator : NullReferenceAbstractValidator<Users>
{
public UpdateUserValidator()
{
RuleFor(user => user.user_status).NotNull();
}
}
RuleFor(x =>x.user_status)
.Must(x => new[]{"Active", "Expired", "Blocked"}.Contains(x))
.WithMessage("User status should be either 'active', 'expired' or 'blocked'");