我如何纠正此错误的代码(无法将类型'string'隐式转换为'System.DateTime') [英] code of how i can correct this error (Cannot implicitly convert type 'string' to 'System.DateTime')
本文介绍了我如何纠正此错误的代码(无法将类型'string'隐式转换为'System.DateTime')的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
尝试
{
SqlCommand cmd = 新 SqlCommand(" + comboBox1.Text + '",con);
con.Close();
con.Open();
SqlDataReader rdr = cmd.ExecuteReader();
如果(rdr.Read())
{
DateTime日期= System.Convert.ToDateTime(dateTimePicker1.Text);
date = rdr [ 0 ].ToString();
txtPrtNo.Text = rdr [ 1 ].ToString();
txtCliNo.Text = rdr [ 2 ].ToString();
txtQty.Text = rdr [ 3 ].ToString();
txtUprice.Text = rdr [ 4 ].ToString();
txtTax.Text = rdr [ 5 ].ToString();
txtTotP.Text = rdr [ 6 ].ToString();
txtBalnc.Text = rdr [ 7 ].ToString();
txtAmtpd.Text = rdr [ 8 ].ToString();
}
con.Close();
}
捕获(异常mn)
{
MessageBox.Show(mn.Message);
}
解决方案
date = rdr [ 0 ]] .ToString();
这行是错误的,您不能隐式地将字符串转换为DateTime-消息会清楚地告诉您.
在您发布的代码中,您曾经从某些datepicker中设置了date变量,然后在您尝试在下一行用SqlDataReader rdr数据覆盖日期的值.我的意思是这没什么用.首先,您决定要在date变量中存储哪些数据,然后尝试以下操作.
Convert.ToDateTime(rdr [ 0 ].ToString())
或
DateTime.Parse(rdr [ 0 ].ToString());
>
try
{
SqlCommand cmd = new SqlCommand("select * from buy where numero='" + comboBox1.Text + "'", con);
con.Close();
con.Open();
SqlDataReader rdr = cmd.ExecuteReader();
if (rdr.Read())
{
DateTime date = System.Convert.ToDateTime(dateTimePicker1.Text);
date=rdr[0].ToString();
txtPrtNo.Text = rdr[1].ToString();
txtCliNo.Text = rdr[2].ToString();
txtQty.Text = rdr[3].ToString();
txtUprice.Text = rdr[4].ToString();
txtTax.Text = rdr[5].ToString();
txtTotP.Text = rdr[6].ToString();
txtBalnc.Text = rdr[7].ToString();
txtAmtpd.Text = rdr[8].ToString();
}
con.Close();
}
catch (Exception mn)
{
MessageBox.Show(mn.Message);
}
解决方案
date=rdr[0].ToString();
this line is wrong, you cannot implicitly convert a string to a DateTime - as the message clearly tells you.
In the code u posted u have once set the date variable from some datepicker and in the very next line u are trying to overwrite the date''s value with SqlDataReader rdr data. I mean that''s a bit useless thing to do. First of all u decide what data u want to store in date variable and then try the following..
Convert.ToDateTime(rdr[0].ToString())
or
DateTime.Parse(rdr[0].ToString());
这篇关于我如何纠正此错误的代码(无法将类型'string'隐式转换为'System.DateTime')的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文