C# 自定义日期验证格式
使用C# C#代码 页面代码C# 自定义日期验证格式,c#,.net,asp.net,C#,.net,Asp.net,使用C# C#代码 页面代码 <asp:CustomValidator runat="server" id="cusCustom" controltovalidate="txtoedate" onservervalidate="cusCustom_ServerValidate" errormessage="The text must be exactly 8 characters long!" /> 上面的代码适用于长度,但我想检查如下的日期格式 “yyyy-mm-dd”,用于
<asp:CustomValidator runat="server" id="cusCustom" controltovalidate="txtoedate" onservervalidate="cusCustom_ServerValidate" errormessage="The text must be exactly 8 characters long!" />
上面的代码适用于长度,但我想检查如下的日期格式
“yyyy-mm-dd”,用于检查此日期格式,如何更改我的代码
需要代码帮助吗?首先,您的日期格式不是8个字符,所以您需要将其改为10个字符。那么您最好的选择是使用您要验证的特定格式的
DateTime.TryParseExact
DateTime value;
e.IsValid = DateTime.TryParseExact(e.Value, "yyyy-MM-dd",
CultureInfo.InvariantCulture, DateTimeStyles.None, out value);
您可以使用不变量文化,因为您只处理日期部分的数字表示,并且精确指定格式。首先,您的日期格式不是8个字符长,因此需要将其固定为10个字符。那么您最好的选择是使用您要验证的特定格式的
DateTime.TryParseExact
DateTime value;
e.IsValid = DateTime.TryParseExact(e.Value, "yyyy-MM-dd",
CultureInfo.InvariantCulture, DateTimeStyles.None, out value);
您可以使用不变量文化,因为您只处理日期部分的数字表示,并且精确指定格式。使用。使用。为日期尝试正则表达式为日期尝试正则表达式哦,不,请不要使用验证日期的
try…catch
。使用DateTime.TryParseExact
@Darin-我怎么知道TryParse
而不是TryParseExact
?谢谢。@Gopal-在回答中(以防你还没有注意到…)哦,不,请不要做尝试…catch
来验证日期。使用DateTime.TryParseExact
@Darin-我怎么知道TryParse
而不是TryParseExact
?谢谢。@Gopal-在回答中(如果您没有注意到的话…)我提供的链接中有一个样本,我想它不够明显,对不起。我提供的链接中有一个样本,我想它不够明显,对不起。