在c#中, 我使用一个十进制DbParameter作为Sql Server存储过程。 创建参数一样,十进制精度问题DbParameter
DbParameter prm = comm.CreateParameter();
prm.ParameterName = "@Price";
prm.DbType = DbType.Decimal;
prm.Direction = ParameterDirection.Output;
comm.Parameters.Add(prm);
//and set the value of comm.Parameters["@Price"] to a variable,
decimal.TryParse(comm.Parameters["@Price"].Value.ToString(),
out this.ProdPrice);
但是out参数的值取整百达。
如果我叫从SQL Server Management Studio中的同一个存储过程,我能得到这个出 参数正确与它的精度
没有上的DbParameter精度或缩放属性。 ,我必须使用的DbParameter上System.Data.Common命名空间获取数据
哪有我能够提前retieve十进制值与其全精度
谢谢...
IDbDataParameter DecimalOut = comm.CreateParameter(); DecimalOut.Direction = ParameterDirection.Output; DecimalOut.ParameterName =“@Price”; DecimalOut.DbType = DbType.Decimal; DecimalOut.Scale = 4; comm.Parameters.Add(DecimalOut); 正常工作.. 谢谢所有.. – 2009-02-05 01:32:52