2017-08-22 29 views
-2

我有字符串"24-04-2015 00:00:00"。我需要将其转换为日期时间并将其存储在数据库中。如何把“24-04-2015 00:00:00”字符串转换为c#中的datetime?

如果我通过"24-04-2015 00:00:00"作为一个字符串的数据库,我收到错误

“无法参数值从字符串到日期时间转换。”

而且还如果我使用DateTime.ParseExact("24-04-2015 00:00:00", "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture); 我得到以下错误

字符串未被识别为有效的DateTime。

+2

[将字符串转换为日期时间]的可能重复(https://stackoverflow.com/questions/919244/converting-a-string-to-datetime) – Esko

+1

显然'24-04-2015'和'yyyy-MM -dd'不匹配。你有没有在这个问题上做任何研究? – mason

+0

“yyyy-MM-dd HH:mm:ss”将与您的输入字符串不匹配。交换yyyy和dd,它应该工作。另外,请注意时区:您的时间是当地时间还是UTC时间?你可以用ParseExact方法的最后一个参数(枚举DateTimeStyles或类似的东西)来指定它。 – AFract

回答

1

如下尝试:

//Add namespace 
using System.Globalization; 

// Code to convert the string to datetime 
string datetime="24-04-2015 00:00:00"; 
DateTime dt = DateTime.ParseExact(datetime, "dd-MM-yyyy HH:mm:ss", CultureInfo.InvariantCulture); 

上面的代码进行测试。

0

您可以使用dd/MM/yyyy,然后保存到DB更改为MM/dd/yyyy。