我在MVC4中有一个播放列表Model类,它有一个Date属性,当用户创建它时,我希望它们不能在今天之前指定日期(所以今天或之后)。
这是我的播放列表类的一部分:
[DisplayFormat(DataFormatString = "{0:d}", ApplyFormatInEditMode = true)]
[Required(ErrorMessage = "Incorrect date format.")]
public DateTime Date { get; set; }
如何为此“范围”添加验证?现在它只是验证它是否是一个有效的日期,但是11/30/2012是有效的,即使它是昨天也不会引起任何错误。
我正在使用Razor作为我的观点。谢谢。
答案 0 :(得分:1)
您无法使用Range属性验证动态值。您可以基于ValidationAttribute创建自己的验证程序,该验证程序根据当前日期或计算日期验证日期。或者您可以在模型类中使用IValidatableObject接口(伙伴类以阻止它被EF覆盖),并验证您想要的属性。