【问题标题】:The DateTime represented by the string is not supported in calendar System.Globalization.GregorianCalendar日历 System.Globalization.GregorianCalendar 不支持字符串表示的 DateTime
【发布时间】:2014-04-25 07:54:36
【问题描述】:

我只是想将出生日期保存到SQL数据库中,但是每次出现新异常时,数据库字段类型都是日期时间。 这是我的代码

 usinfo.BirthDate = DateTime.ParseExact(txtDOB.Text.ToString(), "MM/dd/yyyy", CultureInfo.InvariantCulture);

【问题讨论】:

  • 你在txtDob控件中输入的日期格式是什么?
  • 我添加日期如 '31/04/2012'
  • 使用这种格式dd/MM/yyyy
  • 当你想在 Databae 的文本框中显示日期.....使用下面的格式 txtEventDate.Text = DateTime.Parse(dr["EventDate"].ToString()).ToString(" dd/MM/yyyy");

标签: c# sql sql-server


【解决方案1】:

问题:您首先使用MM/dd/yyyy 解析Month, 但是你先给date这样31/04/2012

解决方法:你需要使用dd/MM/yyyy格式。

试试这个:

usinfo.BirthDate = DateTime.ParseExact(txtDOB.Text.ToString(), "dd/MM/yyyy", 
                                                CultureInfo.InvariantCulture);

编辑:您在此处输入了无效的Date31/04/2012

April 月份没有 31 天。它有30天。因此,您需要确保输入的日期有效。

【讨论】:

  • 很抱歉,它仍然显示相同的错误 :( 是否需要在 WebConfig 中进行任何更改?
  • @Ayaat:你能调试一下你的应用程序,看看txtDob control 的确切值是多少?
  • @Ayaat:检查我编辑的答案,四月不能有 31 天选择一些有效日期
  • 最欢迎你 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-23
  • 1970-01-01
相关资源
最近更新 更多