在工作中遇到需要处理不同精度的数据需要进行运算,然后将处理过的后台数据显示到前台。
起初没有考虑到精度处理,只是做了简单的转化,后来发现显示的数据和预期的总有偏差。
解决办法:
1 后台数据处理是取数据要保持到最高精度,比如在一次运算中有decimal、int、double型的数据,那么结果最好是使用decimal型。
int a=1; decimal b=2.0m; double c=3.0d; float d=4.1f; decimal result=a*b*c*d; 或者var result=a*b*c*d;
2 在把结果显示到前台时要考虑区域特性。
var viewData=result.ToString("N",CultreInfo.CurrentCulture);
时间: 2024-10-09 10:11:49