C#在SQL Server中浮动到Real

wil*_*wil 3 sql-server ef-code-first entity-framework-4.1

我正在尝试使用Entity Framework并拥有一个联系人数据库,其中包含来自Google地图的经度和纬度数据.

指南说这应该存储为浮动.

我创建了我的POCO实体,包括Longitudeas floatLatitudea float.

我刚刚注意到,在数据库中,这些都是如此real.

在我从谷歌获取任何数据之前还有很多工作要做,我离测试很远,我只是想知道是否有人可以告诉我这是否会成为后来的问题?

Jon*_*eet 6

不,那应该没问题.请注意,您可能无法获得与从Google地图收到的完全相同的值,因为这将以十进制格式的文本表示.但是,这实际上是一个物理量,因此更适合作为float/double/real /(您喜欢的任何二进制浮点类型)而不是小数.(小数更适合人为数量 - 特别是货币.)

如果你查看文档float,real你会发现它real是有效的float(24)- 一个32位浮点二进制点类型,就像float在C#中一样.

编辑:如评论中所述,如果您想要提供超过7-8位数的精确度float,那么您可能需要double使用C#,这float(53)在SQL Server中意味着.