示例#1
0
        protected override void AddAttributesToRender(HtmlTextWriter writer)
        {
            AddAttributesToRender(writer);

            if (RenderUplevel)
            {
                if (Helpers.EnableLegacyRendering())
                {
                    writer.AddAttribute("evaluationfunction", "ClientValidateDate", false);
                    writer.AddAttribute("required", Required.ToString().ToLower(), false);
                    writer.AddAttribute("dateSeparator", CultureInfo.CurrentCulture.DateTimeFormat.DateSeparator, false);
                    writer.AddAttribute("shortDatePattern", CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern, false);
                    writer.AddAttribute("minDate", MinDate.ToString(), false);
                    writer.AddAttribute("maxDate", MaxDate.ToString(), false);
                    writer.AddAttribute("invalidErrorMessage", InvalidErrorMessage, true);
                    writer.AddAttribute("requiredErrorMessage", RequiredErrorMessage, true);
                }
                else
                {
                    Page.ClientScript.RegisterExpandoAttribute(ClientID, "evaluationfunction", "ClientValidateDate", false);
                    Page.ClientScript.RegisterExpandoAttribute(ClientID, "required", Required.ToString().ToLower(), false);
                    Page.ClientScript.RegisterExpandoAttribute(ClientID, "dateSeparator", CultureInfo.CurrentCulture.DateTimeFormat.DateSeparator, false);
                    Page.ClientScript.RegisterExpandoAttribute(ClientID, "shortDatePattern", CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern, false);
                    Page.ClientScript.RegisterExpandoAttribute(ClientID, "minDate", MinDate.ToString(), false);
                    Page.ClientScript.RegisterExpandoAttribute(ClientID, "maxDate", MaxDate.ToString(), false);
                    Page.ClientScript.RegisterExpandoAttribute(ClientID, "invalidErrorMessage", InvalidErrorMessage, true);
                    Page.ClientScript.RegisterExpandoAttribute(ClientID, "requiredErrorMessage", RequiredErrorMessage, true);
                }
            }
        }
示例#2
0
 protected virtual IDictionary <string, object> GetSettings()
 {
     return(new Dictionary <string, object>
     {
         { "minDate", MinDate > DateTime.MinValue ? $"$new Date('{MinDate.ToString(Format, CultureInfo.InvariantCulture)}')$" : "" },
         { "maxDate", MaxDate > DateTime.MinValue ? $"$new Date('{MaxDate.ToString(Format, CultureInfo.InvariantCulture)}')$" : "" },
         { "format", ClientFormat }
     });
 }
        public IEnumerable <ModelClientValidationRule> GetClientValidationRules(ModelMetadata metadata, ControllerContext context)
        {
            var rule = new ModelClientValidationRule();

            rule.ValidationType = "daterange";
            rule.ValidationParameters["mindate"] = MinDate.ToString("dd/MM/yyyy");
            rule.ValidationParameters["maxdate"] = MaxDate.ToString("dd/MM/yyyy");
            rule.ErrorMessage = FormatErrorMessage(metadata.GetDisplayName());
            yield return(rule);
        }
示例#4
0
        protected override ValidationResult IsValid(object value, ValidationContext validationContext)
        {
            var date = (DateTime)value;

            if (date >= MinDate && date <= MaxDate)
            {
                return(ValidationResult.Success);
            }
            else
            {
                return(new ValidationResult($"Date must be since {MinDate.ToString()} till {MaxDate.ToString()}"));
            }
        }