是否有从代码方面添加和删除DataAnnotations,特别是[requried]?我的问题是我想让用户能够在我们的CRUD应用程序中保存不完整的表单,但同时使用DataAnnotations验证的强大功能。
如果无法做到这一点,我最好的方法是什么?
答案 0 :(得分:2)
您可以在模型上保留DataAnnotation属性,然后根据需要手动清除验证错误。它可能看起来像这样:
if (certainCondition == true) {
ModelState["someKey"].Errors.Clear();
ModelState["anotherKey"].Errors.Clear();
}
答案 1 :(得分:0)
由于它们是属性,因此无法动态添加,删除或修改DataAnnotations。属性是类型的一部分,在运行时不能更改。
您可以使用ModelState作为Larsenal建议提供: