如何检查或验证文本框输入日期是DD/MM/YYYY格式?

Inn*_*ova 3 .net c# datetime datetime-format

如何检查或验证文本框输入日期的DD/MM/YYYY格式是什么?

aba*_*hev 18

标记:

<asp:Textbox runat="server" ID="TextBox1" />
<asp:CustomValidator runat="server" ControlToValidate="TextBox1" ErrorMessage="Date was in incorrect format" OnServerValidate="CustomValidator1_ServerValidate" />
Run Code Online (Sandbox Code Playgroud)

代码隐藏:

protected void CustomValidator1_ServerValidate(object sender, ServerValidateEventArgs e)
{
    DateTime d;
    e.IsValid = DateTime.TryParseExact(e.Value, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out d);
}
Run Code Online (Sandbox Code Playgroud)

如果你想允许几种格式而只允许它们,请使用下一个:

DateTime.TryParseExact(e.Value, new[] { "dd/MM/yyyy", "yyyy-MM-dd" }, CultureInfo.InvarinatCulture, DateTimeStyles.None, out d);
Run Code Online (Sandbox Code Playgroud)