该字符串未被识别为有效的 DateTime

.NET Framework 3.5切换到.NET Framework 4.7.2后,类似model.RegStateDate = Convert.ToDateTime(ds.Tables[0].Rows[0][“RegStateDate”].ToString()); 会报错:该字符串未被识别为有效的 DateTime 。
改为: model.RegStateDate = (DateTime)(ds.Tables[0].Rows[0][“RegStateDate”]); 就好了。
原因为:在.NET Framework 3.5中,数据类型的处理相对宽松,它允许将不同类型的数据直接赋值给DateTime类型的变量,而不需要进行显式的转换。这意味着,如果数据库中的值可以被隐式转换为DateTime类型,那么在.NET Framework 3.5中就不会报错。
然而,这种做法可能会导致潜在的问题,因为它依赖于隐式转换,而隐式转换可能会在某些情况下失败,导致运行时错误。因此,即使在.NET Framework 3.5中不报错,也建议使用显式转换来确保代码的健壮性。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值