我有一个带有属性的类,其中包含范围属性。
[Required]
[Range(5, 9999)]
public double Price { get; set; }
在任何时候和任何用户输入都受到尊重。
但是在一个特定的代码路径上,我自动化了一些条目,我希望能够将Price设置为0.所以我想以编程方式告诉这个模型类忽略这个要求。
有可能吗?如果是这样的话?
答案 0 :(得分:0)
这似乎是this question的副本,但也许我并不完全理解你的要求。
对于您的场景,我可能会尝试实现IValidatableObject接口,这样您就可以控制验证逻辑而不是使用声明性验证模式。
答案 1 :(得分:0)
我建议您创建System.ComponentModel.DataAnnotations.ValidationAttribute
的派生类型。该实现可以类似于RangeAttribute类,并具有异常值的附加参数。
有关如何执行此操作的详细信息,请查看this MSDN article。