问题描述
我尝试将字符串转换为小数。但是在执行之后它会在更新时说intput string的格式不正确。
我在文本框中提供12567作为输入。我在后端添加了sqldbtype.decimal。
这里是conde snip:
hi i am try to convert string to a decimal. but after execution it say intput string not in correct format while updating.
i am providing 12567 as input in textbox. I have add it with sqldbtype.decimal at backend.
here is conde snip:
cmd.Parameters.Add("@Amount ",SqlDbType.Decimal).Value = Convert.ToDecimal (obentity.Amount);
此行给出错误。
用户可以自由输入字符串或小数值到文本框
感谢advnace
this line give error.
user is free to enter string or decimal value to textbox
thanks in advnace
推荐答案
string s = "1234.56";
double d;
if (double.TryParse(s, out d))
{
...
}
其次,你不应该使用Parameters.Add - 它已被折旧了很长时间,并被AddWithValue取代。
Second, you shouldn't use Parameters.Add - it has been depreciated for a long time, and superseded by AddWithValue.
double d;
if (double.TryParse(obentity.Amount, out d))
{
cmd.Parameters.AddWithValue("@Amount ", d);
...
}
这假定obentity.Amount是一个字符串,包含一个应该是一个双精度值。
This assumes that obentity.Amount is a string, containing a should-be-a-double value.
这篇关于将字符串转换为十进制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!