Asp.net 如何将字符串值传递给需要十进制值的storedp过程

Asp.net 如何将字符串值传递给需要十进制值的storedp过程,asp.net,stored-procedures,parameters,sqldatasource,Asp.net,Stored Procedures,Parameters,Sqldatasource,我有这个问题,我不知道如何解决: -在.aspx页面中,SqlDataSource调用存储过程 -我在代码中传递参数 -我必须传递字符串值,但存储过程中的参数是十进制的 -运行我得到的转换错误,怎么办 //code behind Parameter prm_price = new Parameter("cc_price", DbType.Decimal, newValues["PRICE"].ToString()); sqlDataSource.InsertParameters.Add(prm

我有这个问题,我不知道如何解决:

-在.aspx页面中,SqlDataSource调用存储过程 -我在代码中传递参数 -我必须传递字符串值,但存储过程中的参数是十进制的 -运行我得到的转换错误,怎么办

//code behind
Parameter prm_price = new Parameter("cc_price", DbType.Decimal, newValues["PRICE"].ToString());

sqlDataSource.InsertParameters.Add(prm_price);
-


好吧,你只需要在发送之前先释放字符串。如果它是一个十进制数,你可以在发送它之前将它转换成一个浮点数,当你收到它回来时,你只需要将它转换成一个字符串

我不知道你在用哪种语言,但你可以这样做

sqlDataSource.InsertParameters.Add(Float.Parse(prm_price));
sqlDataSource.InsertParameters.Add(Float.Parse(prm_price));