无法在c#中验证日期

时间:2015-07-15 14:38:26

标签: c# .net

当我在文本框中编写29/07/1990时,此代码似乎不起作用。它总是转到else语句。

  string date = tbDate.Text;

  DateTime Test;
  if (DateTime.TryParseExact(date, "MM/dd/yyyy", null, DateTimeStyles.None, out Test) == true) {
    Console.WriteLine("Date OK");
  } else {
    Console.WriteLine("Date Not OK");
  }

2 个答案:

答案 0 :(得分:5)

您提供的是非美国格式的日期,并尝试使用美国格式的解析器进行解析。改变" MM / dd / yyyy"到" dd / MM / yyyy":

if (DateTime.TryParseExact(date, "dd/MM/yyyy", null, DateTimeStyles.None, out Test) == true) {
    ...

答案 1 :(得分:0)

29不是有效月份,所以解析会自然失败。