我有一个日期字段,格式为“dd-My”,例如 01-Jan-2013。首先,我想检查必须是“dd-My”的格式,其次日期不应该是过去,但可以是今天及以后。
我该怎么做?我想使用正则表达式,但我不知道什么是合适的。
您应该使用DateTime.TryParseExact
而不是使用正则表达式来验证您的 DateTime
string testDate = "01-Jan-2013";
DateTime temp;
if (DateTime.TryParseExact(testDate,
"dd-MMM-yyyy",
CultureInfo.InvariantCulture,
DateTimeStyles.None,
out temp) &&
(temp > DateTime.Today))
{
//Valid date and greater than today
}
else
{
//Invalid date or less than today
}
我认为您应该绑定用户以正确格式填写日期,而不是检查它...
在这种情况下,最好的解决方案是MaskEditExtender