C#从db解析现有的时间戳?

C#从db解析现有的时间戳?,c#,C#,我试图将现有的时间戳从我的数据库解析为日期时间,但效果并不理想。据我所知,以下是一个有效的时间戳 2017-03-27 02:23:37 我试过什么 Convert.ToDateTime(row["last_used"]) 还有这个 DateTime.Parse(Convert.ToString(row["last_used"])) 两个都会抛出关于它不是有效日期时间的错误 我如何保存它们: DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") 如果使

我试图将现有的时间戳从我的数据库解析为日期时间,但效果并不理想。据我所知,以下是一个有效的时间戳

2017-03-27 02:23:37
我试过什么

Convert.ToDateTime(row["last_used"])
还有这个

DateTime.Parse(Convert.ToString(row["last_used"]))
两个都会抛出关于它不是有效日期时间的错误

我如何保存它们:

DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")

如果使用自定义模式格式化日期时间以进行保存,则可以使用相同的模式将其从字符串解析回日期时间:

var date = DateTime.ParseExact("row["last_used"]", "yyyy-MM-dd HH:mm:ss", CultureInfo.CurrentCulture);

我建议您使用ISO标准格式
date.ToString(“o”)
,它将生成类似
2009-06-15T13:45:30.0000000 z
,然后您可以使用
DateTime.parse(dateStr)

解析它,因为下面的语句工作正常:DateTime.parse(DateTime.Now.ToString(“yyyy-MM-dd HH:MM:ss”);我猜这个问题与来自数据库的值有关。行[“last_used”]不能返回null?为什么将日期保存为字符串?是否将日期存储为数据库中的字符串?.Parse不起作用,并且.ParseExact需要3个参数。一个IFormatProvider参数。尝试使用
CurrentCulture.InvariantCulture
作为
IFormatProvider
谢谢你的工作,尽管我现在得到了“字符串未被识别为有效的日期时间”,但它对我有效:
var date=DateTime.ParseExact(“2017-03-27 02:23:37”,“yyyy-MM-dd HH:MM:ss”,CultureInfo.CurrentCulture)