我有以下代码:
public class NewsEditViewDataValidator : AbstractValidator<NewsEditViewData>
{
public NewsEditViewDataValidator()
{
// Status unique identifier cannot be empty
// Status unique identifier must be greater or equal to 1
RuleFor(x => x.StatusId)
.NotEmpty()
.WithMessage("Status is required")
.GreaterThanOrEqualTo(1)
.WithMessage("Status unique identifier must be greater or equal to 1");
// Other rule sets
}
}
StatusId 是一个整数。NotEmpty 在这种情况下如何工作?它验证了什么?整数还是字符串?这部分检查整数是否为空的单元测试会是什么样子?
这用于验证我的 MVC 3 应用程序中的下拉列表。验证在视图上运行良好。GreaterThanOrEqualTo 部分是状态唯一标识符永远不能小于 1。我想触发这个来验证我的对象。什么时候这样做NotEmpty也不会火?有没有优先考虑哪个会先被解雇?如果 StatusId 为 0,将触发哪个规则集?如果是-1?在检查业务对象的 id 时,我希望 NotEmpty 使用视图和 GreaterThanOrEqualTo。有什么建议么?