【发布时间】:2020-09-19 08:43:08
【问题描述】:
在此之前,代码工作正常,而程序无法识别日期格式可能是因为文化信息不同。 我正在使用 Convert.ToDateTime 方法来转换 DateTime 格式。
Input.TestDate = Convert.ToDateTime(gvwTest.Rows[i].Cells["TxnDate"].Value).ToString("yyyy-MM-dd HH:mm:ss");
结果,它转换了,但 MM 和 dd 不正确。
从“1/6/2020”到“2020-01-06 00:00:00”
string test1 = gvwTest.Rows[i].Cells["TxnDate"].Value.ToString();
string test2 = gvwTest.Rows[i].Cells["TxnDate"].Value.GetType().ToString();
test1 = "1/6/2020";
test2 = "System.String";
【问题讨论】:
-
避免
Convert.ToDateTime。相反,您应该始终更喜欢DateTime.ParseExact和DateTime.TryParseExact。 Microsoft 需要从 .NET 中完全删除Convert类,imo。 -
@Dai 我不知道微软会删除 Convert,但感谢您的信息。项目合作多方,我只是想让它更加规范。