我在数据库中存储了十进制(18,15)的纬度和经度值。 Lat = 1.302208000000000 长= 103.797717000000000
我想展示他们价值观的细节。 我在服务对象中使用了十进制数据类型。 十进制Lat,Long;
这是我的代码。
ServiceTest test = new ServiceTest ();
//Method 1
test.Lat = Convert.ToDecimal(test1.Lat.ToString());
test.Long= Convert.ToDecimal(test1.Long.ToString());
//Method 2
test.Lat = (decimal)test1.Lat;
test.Long= (decimal)test1.Long;
// Method 3
test.Lat = decimal.Parse(test1.Lat.ToString());
test.Long= decimal.Parse(test1.Long.ToString());
我想要精确的Lat,Long值。 但结果是:
test.Lat = 1.30
test.Long = 103.80
我如何得到如下结果:
test.Lat = 1.302208000000000
test.Long = 103.797717000000000
由于
答案 0 :(得分:1)
我会看一下:MSDN Decimal Formatting docs
基本上,toString方法决定(在没有你告诉它打印的格式的情况下)截断到两个小数位。您可以使用链接的格式说明符覆盖此行为。
我也发现了这一点,可能会有所帮助:random google search for 'decimal format C#' produced this