如果您在 MSSQLServer 中有一个浮点数,那么您在 .NET 中将其映射到什么?
您可以将其转换为 Double 还是会丢失数字?
如果您在 MSSQLServer 中有一个浮点数,那么您在 .NET 中将其映射到什么?
您可以将其转换为 Double 还是会丢失数字?
查看:
在您的情况下,SQL Server 本机类型浮点映射到 SQL Server CLR SqlDouble,然后在 .Net 中映射到Double
更新(2016 年 5 月):
msdn 文档的更新版本:映射 CRL 参数数据
C# 有一个 float 类型,但它也可以转换为 double 类型。
据我回忆,大部分 ORM 工具都会将其映射为 Decimal 类型,不会像 double 或 float 那样丢失精度。
这取决于 SQL 浮点数的大小。对于等同于 float(53) 的普通“float”,您需要使用 C# double。对于 float(24) 或更低,C# float 就足够了,或者 double 也可以。
Microsoft XSD 生成的自动代码将 SQL 浮点数(默认浮点数)转换为 C# 双精度。
所以你可以建议这不是大错误。
直到您使用具有默认大小的浮点数。