我在MVC4中使用流利的验证
在我的模型中,我有一个列表:
public List<int> TransDrops { get; set; }
在视图中,为列表中的每个项目创建文本框。
随后,我想确保每个字段都已填写。(非null / empty)
OrderDetailsViewModelValidator是模型上的验证器,我需要什么?
谢谢
首先,必须对集合项使用可为空的整数类型,否则空文本框将被绑定为零值,这使得无法区分空文本框并填充零。
public List<int?> TransDrops { get; set; }
接下来,使用谓词验证器(必须规则):
RuleFor(model => model.TransDrops)
.Must(collection => collection == null || collection.All(item => item.HasValue))
.WithMessage("Please fill all items");
如果需要防止空集合成功通过验证,则只需NotEmpty()
在谓词验证器之前添加规则:它会检查是否有IEnumerable
not null
,并且至少有一项。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句