Entity framework 4 在我的asp.net mvc应用程序中将Float转换为Double有风险吗

Entity framework 4 在我的asp.net mvc应用程序中将Float转换为Double有风险吗,entity-framework-4,sql-server-2008-r2,type-conversion,Entity Framework 4,Sql Server 2008 R2,Type Conversion,我在Sql server 2008上创建了一个MedicalLabResult表,该表有一个数据类型为Float的Result字段 但是,当我使用Entity Framework映射数据库时,DBContext模板会自动将Double数据类型分配给模型类上的Result字段。 所以如果我试着写一些东西:- float result = MedicalLabResult.Single().Result; 然后visual studio将引发一个错误,它无法隐式地将float转换为double,因

我在Sql server 2008上创建了一个
MedicalLabResult
表,该表有一个数据类型为
Float
Result
字段

但是,当我使用Entity Framework映射数据库时,DBContext模板会自动将
Double
数据类型分配给模型类上的
Result
字段。 所以如果我试着写一些东西:-

float result = MedicalLabResult.Single().Result;
然后visual studio将引发一个错误
,它无法隐式地将float转换为double
,因此我必须将上述内容修改为:-

double result = MedicalLabResult.Single().Result;
但是,由于数据库中
结果
字段的数据类型是
Float
,因此将
Float
转换为
Double
会有风险吗?

BR

实体框架设计师做的一切都是对的。Sql server
Float
数据类型实际上是64位双精度浮点数,它在CLR中的等价物是
System.double
。如果要存储单精度浮点,则必须在sql中使用
real
。它被映射到CLR
System.Single

有关SQL Server和CLR数据类型的更多参考,请转到