实体框架将float数据类型映射为double

joh*_* Gu 15 entity-framework asp.net-mvc-3

我正在使用数据库优先方法开发asp.net mvc 3 Web应用程序.

我有一个名为Results包含两列(min & max)类型的表float,但是当我使用Entity Framework将现有数据库映射到模型类时,EF会创建一个Results具有min & max字段数据类型的类,double而不是在现有数据float中指定的类数据库.

那么为什么会发生这种行为呢?它会引起任何问题吗?

Ger*_*old 18

根据MSDN,这是正常行为.

即使SQL服务器的real数据类型也被映射到了double,即使这样float就足够了.

但这里的类型名称非常混乱.实际上float(t-SQL)double(.Net)相同:精度为15位,负范围为1.79769313486232e308,正数为1.79769313486232e308.