使用Fluent Validator验证Bool

时间:2013-03-13 14:59:24

标签: nhibernate fluent-nhibernate fluentvalidation

我想使用流利验证器验证bool属性。 我应该使用哪种方法?

.NotNull()和.NotEmpty()函数不起作用。

感谢。

4 个答案:

答案 0 :(得分:5)

您应该使用.NotNull()

NotEmpty()仅将true作为有效财产。 NotNull()会同时将truefalse作为有效的属性。

答案 1 :(得分:2)

为了使用流利的验证器来验证布尔值:

创建以下规则

            RuleFor(x => x.BooleanProperty)
            .Must(ValidateBoolean)
            .WithErrorCode("Boolean Validation Failed");

定义谓词验证器

        private bool ValidateBoolean(T arg1, bool arg2, PropertyValidatorContext arg3)
    {
        // validate arg2, return true if validation successful or false if failed
        throw new System.NotImplementedException();
    }

答案 2 :(得分:1)

请查看this question。它成功回答了,我猜这就是你要找的东西。

在其中,他们创建了一个流畅的验证器来检查是否选择了@Html.CheckBox。如果我理解你的问题,这正是你正在寻找的。

如果有帮助,请告诉我。 - 谢谢

答案 3 :(得分:0)

尝试使用.Equal(true) - 执行此操作。