我不能't转换int和float与convert. tostring()到string
本文关键字:tostring convert string float 不能 int 转换 | 更新日期: 2023-09-27 18:14:30
我在我的形式中有2个控件,一个是int,另一个是float,我试图用" convert . tostring()"方法转换,但它不起作用,我一直得到一个空值这是我的代码:
string req = "select coef from amortissement where id_amort =@p";
textBox4.Text =Convert.ToString(GetRecordsetValue(req, textBox1.Text) as String)
req = "select Plan from amortissement where id_amort =@p";
textBox3.Text =Convert.ToString(GetRecordsetValue(req, textBox1.Text) as String);
这是GetRecordsetValue方法:
private Object GetRecordsetValue(string req, string sValParam)
{
// ExecuteScalar est optimisée pour récupérer une seule valeur
SqlCommand cmd = null;
try
{
cmd = new SqlCommand(req, con);
cmd.Parameters.AddWithValue("@p", sValParam);
return cmd.ExecuteScalar();
}
catch
{
return String.Empty;
}
finally
{
cmd.Dispose();
}
}
thanks for Help
如果您的查询没有找到任何匹配WHERE条件的记录,则GetRecordsetValue
中的代码返回NULL。返回的空值被传递回Convert.ToString(),这会引发异常
string req = "select coef from amortissement where id_amort =@p";
object result = GetRecordsetValue(req, textBox1.Text);
if(result != null)
{
textBox4.Text = Convert.ToString(result);
}
else
{
// and/or a message to the user to correct its inputs.
textBox4.Text = "";
}
还存在GetRecordsetValue
内部传递值的问题。此值作为字符串传递,并作为字符串数据类型添加到参数集合中。如果字段id_amort
不是字符串(从它的名称看来),那么很可能您的查询无法找到记录。
我建议创建GetRecordsetValue的不同重载。接受整数,例如