【发布时间】:2018-07-13 12:02:42
【问题描述】:
我有以下 C# 方法:
DateTime ConvertStringToDate(string dateInString)
{
try {
//string SSD = dateInString;
//DateTime date = Convert.ToDateTime(SSD);
//string strDate = String.Format("{0:yyyy-MM-dd HH:mm:ss.fff}", date);
//return Convert.ToDateTime(strDate);
return DateTime.ParseExact(dateInString, "MM/dd/yyyy", CultureInfo.InvariantCulture);
}
catch (Exception) { }
return DateTime.Today;
}
注释中的代码是我之前尝试过的另一种方式。
我在印度,正在为我在美国的客户开发一个 ASP.NET WebForms 应用程序。在其中一种表格上,我的客户将在 TextBox 中输入日期,例如 2018 年 6 月 20 日,格式为 MM/dd/yyyy。
但在这两种情况下我都会收到此错误:System.FormatException: 'String was not recognized as a valid DateTime.'
我在 SO 上尝试了很多解决方案,但都没有奏效。
【问题讨论】:
-
@Rafalon 对不起,我试图用时间来测试它。忘记删除了。它也不适用于日期。
-
dateInString的确切值是多少? 不要猜测,调试并检查。 -
MM/dd/yyyy格式将要求您的日期为06/20/2018并且仍然MM/dd/yyyy hh:mm:ss不能用于仅日期字符串 -
@mjwills 调试时该值为 6/20/2018。
-
那你希望
MM/dd/yyyy hh:mm:ss如何匹配这个?
标签: c# asp.net .net datetime webforms