日期:2014-05-18  浏览次数:20405 次

存储过程里的decimal(18,3) output,在c#里获得的时候却四舍五入了,成整数了。怎么办?
C# code
DbParameter BeginInAmount = db.GetDbParameter();
        BeginInAmount.ParameterName = "@BeginInAmount";
        BeginInAmount.DbType = DbType.Decimal;
        BeginInAmount.Direction = ParameterDirection.Output;
        list.Add(BeginInAmount);


我明明已经声明它的类型是
C# code
BeginInAmount.DbType = DbType.Decimal;


在存储过程里我是这么声明的
SQL code
@BeginInAmount decimal(18, 3)


数据库利用“执行存储过程”工具已经得到输出值是5.6.

可是在程序里却得到的是6.

到底怎么转换呀??

------解决方案--------------------
jf