有人可以解释我为什么会这样:
public static string ToValueString(this decimal value)
{
return value.ToString(EnUsCulture);
}
当我这样称呼时:
var result = 1M.ToValueString();
我得到了结果:
"1"
现在来了一个奇怪的情况。我有从数据库中获得的十进制值。值为 十进制(18,4) 。我有db的值,例如 1 。我可以在调试器中看到它,如 1 ,而不是 1.0000 。但是当我打电话时:
var result = value.ToValueString();//where value == 1
我得到了结果:
"1.0000"
为什么会这样?为什么在第一个变量十进制 1 返回 “1” 和 “1.0000”第二个变体中的em>