繁体   English   中英

无法在 c# 中将字符串转换为 DateTime

[英]Can't convert string to DateTime in c#

现在我知道这个问题被问了很多,但是我尝试的每一个解决方案都会遇到同样的问题。 我正在尝试将格式为“yyyy-MM-dd”的字符串转换为类型 DateTime,但我不断收到以下错误:

Unable to cast object of type 'System.DateTime' to type 'System.String'.

属性如下: public DateTime DateOfBirth { get; set; } public DateTime DateOfBirth { get; set; }

我正在尝试的行如下: DateOfBirth = //Conversion happens here\\

我试过的:

DateOfBirth = DateTime.ParseExact(reader.GetString(6), "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.None);
DateOfBirth = DateTime.ParseExact(reader.GetString(6), "yyyy-MM-dd", CultureInfo.InvariantCulture);
DateOfBirth = DateTime.ParseExact(reader.GetString(6), "yyyy-MM-dd", null);
Convert.ToDateTime("reader.GetString(6)")

似乎没有任何效果。 这可能是我忽略的一些非常愚蠢的事情,但我似乎无法找到问题所在。 希望大家帮忙?

问候,雅各布

阅读您的错误,您的实际问题是您正在尝试将 DateTime 转换为字符串,正如您所说:

无法将“System.DateTime”类型的 object 转换为“System.String”类型。

这不是您将字符串转换为日期时间的问题,而是阅读器将日期时间转换为字符串的问题。 这是你应该研究的。 我不确定您的阅读器的类型是什么,因此请查看文档以了解附加到阅读器的“GetDatetime”方法。 或者创建一个,或者告诉我们阅读器的类型,我们会看到。

天哪,我知道这真的很愚蠢。 我需要使用reader.GetDateTime()

对于这个愚蠢的问题,我感到非常抱歉。 我已经为这个问题忙了几个小时了,当你提出问题时,你就会解决它。 欢迎来到软件开发,我猜...

首先,检查reader.GetString(6)返回什么?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM