在MVC2 Web应用程序中,我有一个要求,以验证用户至少13岁。是否有日期/DateTime验证属性可以使我这样做?

有帮助吗?

解决方案

由于您不是“真正”验证日期,因此您正在基于方程式(今天 - 日期> 13),因此您可能必须写作 自定义验证属性。 这样的东西(这只是一个后面的示例)。

using System.ComponentModel.DataAnnotations;
public class AgeValidationAttribute : ValidationAttribute
    {
        public int MinAge { get; set; }

        public override bool IsValid(DateTime value)
        {
            if (value == null)
            {
                return true;
            }

            return DateTime.Now.Subtract(value).TotalDays > (MinAge * 365.25);
        }
    }
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top