缺少十进制值

时间:2015-03-24 03:44:55

标签: c# google-maps

我在数据库中存储了十进制(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

由于

1 个答案:

答案 0 :(得分:1)

我会看一下:MSDN Decimal Formatting docs

基本上,toString方法决定(在没有你告诉它打印的格式的情况下)截断到两个小数位。您可以使用链接的格式说明符覆盖此行为。

我也发现了这一点,可能会有所帮助:random google search for 'decimal format C#' produced this