任何人都可以告诉我以注册形式验证日期字段的代码(shd也验证了每个月的闰年和没有天数
答案 0 :(得分:2)
这取决于输入,但假设你有整个日期的字符串输入,那么你可以尝试类似的东西:
try
{
DateTime parsedDate = DateTime.Parse(incomingDateString);
}
catch
{
throw new Exception("Incoming Date string could not be parsed as a DateTime");
}
或者,如果您有三个整数作为字符串从表单进入,那么您将使用
替换DateTime.Parse DateTime parsedDate = new DateTime(Int32.Parse(yearString), Int32.Parse(MonthString), Int32.Parse(DayString));
并允许DateTime构造函数处理分析日期和闰年的详细信息。您可能更复杂并使用Int32.TryParse并提供更具体的错误消息并检查空字符串(如果这就是您需要的。)
答案 1 :(得分:1)
您可以通过添加日历控件或日期选择器控件来确保获得有效日期。这样可以避免为了验证此字段而添加额外的验证。
如果您不想使用日历控件或日期选择器,可以使用DateTime.Parse并将其放在Try,Catch块中。
dateString = YourDateField.Text;
try {
dateValue = DateTime.Parse(dateString);
}
catch (FormatException) {
Console.WriteLine("Unable to convert, this is not a valid date '{0}'.", dateString);
}
希望这有帮助。