本文介绍了将字符串转换为十进制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试将字符串转换为小数。但是在执行之后它会在更新时说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.



这篇关于将字符串转换为十进制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-24 10:46