我需要找到将DateTime字段限制为今天日期的最佳方法。我需要确保用户不会在将来选择日期,并且我正在尝试找出在C#MVC应用程序中执行此操作的最佳方法。
我可以,我会通过Javascript在客户端进行。 我想弄清楚的是在服务器端通过DataAnnotations做到这一点的最好方法吗?
我是否可以使用DataAnnotations属性来指定max DateTime?或者通过数据注释不是一个好方法,因为我的MaxDate每天都会改变到当天?
我应该只通过C#编程逻辑进行验证吗?
答案 0 :(得分:2)
我的某个应用中有类似内容
public sealed class DateEndAttribute : ValidationAttribute
{
public string DateStartProperty { get; set; }
public override bool IsValid(object value)
{
// Get Value of the Date property
string dateString = HttpContext.Current.Request[YourDateProperty];
DateTime dateNow = DateTime.Now
DateTime dateProperty = DateTime.Parse(dateString);
//
return dateProperty < dateNow;
}
}