当前位置:编程学习 > C#/ASP.NET >>

将参数值从 String 转换到 DateTime 失败???????????????


string time=Convert.ToString(DateTime.Parse(txtPublishDateD.Text));
                
sqlDataAdapter9.UpdateCommand.Parameters[4].Value = time;


其中txtPublishDateD.Text是TextBox中输入的时间,为什么总是出错呢? --------------------编程问答-------------------- 什么错
干嘛不string time=txtPublishDateD.Text; 
--------------------编程问答-------------------- string time=Convert.ToString(DateTime.Parse(txtPublishDateD.Text)); 
什么意思?
从字符串转换成时间,然后再从时间转换成字符....
--------------------编程问答-------------------- string time=Convert.ToString(DateTime.Parse(txtPublishDateD.Text)); 
                
sqlDataAdapter9.UpdateCommand.Parameters[4].Value = time; 

这两句,哪句报的错? --------------------编程问答-------------------- DateTime time=DateTime.Parse(txtPublishDateD.Text);  --------------------编程问答-------------------- 干嘛转来转去的呀! --------------------编程问答-------------------- string time=txtPublishDateD.Text;
               
sqlDataAdapter9.UpdateCommand.Parameters[4].Value = DateTime.Parse(ptime);  --------------------编程问答-------------------- 输入的字符串格式错误
确认是不是:yyyy-mm-dd
--------------------编程问答-------------------- DateTimetime=DateTime.Parse(txtPublishDateD.Text); 
                
sqlDataAdapter9.UpdateCommand.Parameters[4].Value = time; 
--------------------编程问答-------------------- sqlDataAdapter9.UpdateCommand.Parameters[4].Value = DateTime.Parse(txtPublishDateD.Text);  --------------------编程问答-------------------- sqlDataAdapter9.UpdateCommand.Parameters[4]的参数类型是DateTime的吧

DateTime time=DateTime.Parse(txtPublishDateD.Text); 
                
sqlDataAdapter9.UpdateCommand.Parameters[4].Value = time; 
--------------------编程问答-------------------- string time=DateTime.Parse(txtPublishDateD.Text).Tostring("时间格式");  --------------------编程问答--------------------
引用 1 楼 niuniuhuang 的回复:
什么错 
干嘛不string time=txtPublishDateD.Text; 


那样也是一样的错误,说是将参数值从 String 转换到 DateTime 失败 --------------------编程问答--------------------
引用 10 楼 S170393163 的回复:
sqlDataAdapter9.UpdateCommand.Parameters[4]的参数类型是DateTime的吧 

DateTime time=DateTime.Parse(txtPublishDateD.Text); 
                
sqlDataAdapter9.UpdateCommand.Parameters[4].Value = time; 


这样也不对呀,我说下具体的:
如果是图书入库的话呢,在每个TextBox中输入图书信息。输入publishDate:1986-7-7
然后在dataGrid中显示所有图书信息。
如果在dataGrid中选中一行的话呢,就把对应图书的信息,显示在每个对应的TextBox中。
这个时候要是修改几个信息,重新更新数据库的话,就显示了“将参数值从 String 转换到 DateTime 失败”
我试了好多方法,怎么都不行啊! --------------------编程问答--------------------
引用 10 楼 S170393163 的回复:
sqlDataAdapter9.UpdateCommand.Parameters[4]的参数类型是DateTime的吧 

DateTime time=DateTime.Parse(txtPublishDateD.Text); 
                
sqlDataAdapter9.UpdateCommand.Parameters[4].Value = time; 


对的,sqlDataAdapter9.UpdateCommand.Parameters[4]的参数是时间型的,我想问下给参数赋值时,
赋值应该是什么类型的?string 还是datatime 的?
书上有个例子就是赋值为string类型的! --------------------编程问答--------------------
0------------------------
 这样转:

                string dt = null;
                if (!DateTime.TryParse("要转的字符串",out dt))
                    //失败
                else
                   //成功,并直接用 dt 不要再 dt= ……
--------------------编程问答--------------------

                string time = "";
                DateTime.TryParse(txtPublishDateD.Text, out time);
                if (string.IsNullOrEmpty(time))
                {
                    //为空
                    return;
                }
                else
                {
                    sqlDataAdapter9.UpdateCommand.Parameters[4].Value = time;
                }
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,