无法将类型为 'System.DateTime' 的对象强制转换为类型"系统字符串"。c#



我正在尝试显示日期并将其还原为Labels = strings,但是我在LINE list.Add((string)myReader["Date"]);

上遇到了一个错误

这是我的代码:

con.Open();
myReader = cmdDB.ExecuteReader();
List<string> list = new List<string>();
while (myReader.Read())
{
    list.Add((string)myReader["Date"]);
}
string[] strings = list.Select(x => x.ToString()).ToArray();
cartesianChart1.AxisX.Add(new Axis
{
    Title = "Date",
    Labels = strings
});
cartesianChart1.AxisY.Add(new Axis
{
    Title = "Sales",
    LabelFormatter = value => value.ToString()
});

有解决方案吗?谢谢你!P.S.我正在使用livecharts和mysql。

您可以尝试这样的尝试

list.Add(myReader["Date"].ToString());

如果您愿意,也可以使用自定义的日期和时间格式字符串

在ToString(DD-MM-yyyy)中的日期应用格式

do

list.Add(Convert.ToString(myReader["Date"]));

看来您的Date列不是字符串,而是DateTime列。

执行(string)myReader["Date"]尝试在DateTime列上显式打字到不可能的字符串。但是Convert.ToString给出了您的值的字符串表示。

即使值为nullConvert.ToString(object value)也会返回null,而不是像.ToString()一样抛出异常。

note :如果我们在数据库中具有类型dateTime的列,并且在ASP.NET CORE/CSHARP应用程序中具有字符串

我们可以在

的情况下将dateTime转换为字符串

例如

    date_format(ReferralDate, '%d/%m/%Y') as ReferralDate,

商店过程的完整示例

SELECT  referralCostsID,
        ClientID,
        ReferralSource,
        date_format(ReferralDate, '%d/%m/%Y') as ReferralDate,
        AdCost,
        Notes
FROM referralcostssetup

使用

 if (Convert.IsDBNull(columnValue))
 {
      return null;
 }
  return columnValue;

ver veration是数据为null或emty并返回值

相关内容

  • 没有找到相关文章

最新更新