0

运行 ASP Web 应用程序时出现此异常

从字符串转换日期和/或时间时转换失败。 当我调试时,我在下面的代码中得到错误所有关于日期的变量都是 DATETIME 格式。

for (int j = 0; j < mapdate.Count; j++)
{
    string mapstartend = "Select Id,CDateTime from MAP1 where Product='" + pro[allpromap] + "' and ProgDate= '" + mapdate[j]+ "' and Channel='" + mapChannel[allmap] + "'";
    SqlCommand mapdat = new SqlCommand(mapstartend, conn);
    SqlDataReader mapdatrdr = mapdat.ExecuteReader();
    while (mapdatrdr.Read())
    {

        mapiddate.Add(mapdatrdr["Id"].ToString(), mapdatrdr.GetDateTime(1));
    }
    mapdatrdr.Close();
}
4

3 回答 3

2

如果这是问题,那么它应该与

日期时间.Parse()

但是如果你使用 TryParse() 来检查字符串是否有效会更好。

有关如何使用它的更多信息,请参见此处

于 2013-03-26T16:44:19.160 回答
0

尝试这个

mapdatrdr.GetDateTime(columnIndex).ToString("dd MMM yyyy");

它应该工作

于 2013-03-26T16:54:39.130 回答
0

你的日期字段是什么格式的?

尝试使用:

Convert.ToDateTime(mapdatrdr["CDateTime"].ToString());
于 2013-03-26T16:35:39.980 回答