我有这个问题,我不知道如何解决:
- 在.aspx页面中,SqlDataSource调用存储过程 -i在代码隐藏中传递参数 -i必须传递字符串值,但参数在存储过程中是十进制的 - 运行得到转换错误,该怎么办?
//code behind
Parameter prm_price = new Parameter("cc_price", DbType.Decimal, newValues["PRICE"].ToString());
sqlDataSource.InsertParameters.Add(prm_price);
-
//stored procedure
@cc_prezzo decimal(15,3),
答案 0 :(得分:0)
嗯,你必须在发送之前投射字符串。如果它是一个小数,你可以在发送它之前把它放在一个浮点数中,当你收到它时,你只需要在一个字符串中重铸它。
我不知道你正在使用哪种语言,但你可以做类似的事情
sqlDataSource.InsertParameters.Add(Float.Parse(prm_price));