• winform程序运行时出现“该字符串未被识别为有效的DateTime”
  • 2024/9/17 23:54:28  浏览次数:196
  • .NET framework3.5切换到.NET Framework4.7.2后,类似

    model.RegisteDate=Convert.ToDateTime(ds.Tables[0].Rows[0][“RegStateDate”].ToString());会报错:该字符串未被识别为有效的DateTime。

    改为:

    model.RegisteDate=(DateTime)(ds.Tables[0].Rows[0][“RegStateDate”]);就好了。

    原因为:在.NET Framework 3.5中,数据类型的处理相对宽松,它允许将不同类型的数据直接赋值给DateTime类型的变量,而不需要进行显式的转换。这意味着,如果教据库中的值可以被隐式转换为DateTime类型,那么在.NET Framework 3.5中就不会报错。然而,这种做法可能会导致潜在的问题,因为它依赖于隐式转换,而隐式转换可能会在某些情况下失败,导致运行时错误。因此,即使在.NET Framework 3.5中不报错,也建议使用显式转换来确保代码的健壮性。



合作伙伴:车三百中国联通 太平洋电脑网