C# 传dateTimePicker参数问题

来源:百度知道 编辑:UC知道 时间:2024/06/29 21:27:18
数据库字段类型是datetime

SqlParameter checkdate = new SqlParameter("@checkdate", SqlDbType.DateTime);
checkdate.Value = this.dateTimePicker1.Value.ToString("yyyy-MM-dd HH:mm:ss");
sqlCommand.Parameters.Add(checkdate);

我这么传 为什么老是说 将参数值从 String 转换到 DateTime 失败。??
对不起,各位 原来我这个语句没有问题,是我复制粘贴的时候把下面的语句给复制错了!! 我都晕了

tcheckdate.Value = his.dateTimePicker1.Value.ToString("yyyy-MM-dd HH:mm:ss");

你都tostring 这里就错了,表示返回的是字符串类型,怎么能赋值给 datatime类型了?

改成

tcheckdate.Value =DateTime.Parse( his.dateTimePicker1.Value.ToString("yyyy-MM-dd HH:mm:ss"));
别忘记给分

checkdate.Value = this.dateTimePicker1.Value

楼主你提出这个问题已经够幼稚了,建议你利用工作之余找本书系统的看一遍,这样才能理论结合实际,我相信你一定会受益匪浅。

你这个问题原因人家说的很清楚,怎么可能将字符型的变量赋给日期类型呢?
checkdate.Value 是日期类型,
this.dateTimePicker1.Value.ToString("yyyy-MM-dd HH:mm:ss") 其中
this.dateTimePicker1.Value的值已经是日期类型的了,你还硬是将它用TOString()函数转化成字符型。这就是报错的原因,等号= 的左右两边数据类型不一直造成的。
解决这个问题,直接把 ToString()去掉就可以了。。。。