我有一个带有用于输入出生日期的文本框的 ASP.NET Web 表单应用程序。出生日期有一个 RangeValidator。
<asp:RangeValidator ID="RangeValidator1" runat="server" ErrorMessage="Please enter a valid date of birth." Display="Dynamic" ControlToValidate="txtDate" Type="Date" />
在后面的代码中,我设置了允许的最小值和最大值,如下所示:
RangeValidator1.MinimumValue = new DateTime(1900, 1, 1).ToShortDateString();
RangeValidator1.MaximumValue = DateTime.Now.ToShortDateString();
这通常似乎工作正常。但是,用户已将其文化设置为 fr-BE。这种文化只使用两位数字表示年份。然后最小值变为“01-01-00”,范围验证器将其解释为 2000 年 1 月 1 日。因此用户不能输入 2000 年之前的出生日期。
如何设置范围验证器的最小值,使其适用于所有文化?