Entityframework模型第一个十进制精度

时间:2014-06-20 16:26:16

标签: entity-framework entity-framework-6 ef-model-first

我首先使用Entityframework 6和模型。在图中,我为我的数据类型选择了十进制。当我保存十进制值时,数据库只有整数,小数被删除。

我的第一个怀疑是检查精度,但是从模型第一个图设计师进入属性窗口,精度和比例下拉除了"无"之外没有其他选项。

如何让EF保存我的小数?这是一个精确的问题吗?如果是这样,在这种情况下如何设置精度?

2 个答案:

答案 0 :(得分:3)

好的,我觉得有点愚蠢,因为没有早点搞清楚,但这是一个简单的解决方法。

在edmx设计器中列的属性窗口中,精度和比例都是一个下拉菜单,但它仍然允许您键入它。所以我只输入2进行缩放,按回车键,然后就可以了。

如果他们没有为您提供任何预设值并希望您输入内容,则不确定为什么他们会将其设置为下拉列表。

答案 1 :(得分:0)

另外需要注意的是,Entity Framework的“从数据库更新模型”功能可能非常有问题。在我的情况下,我将一些数据库字段从2位小数精度更改为4位小数精度,然后从数据库中执行了更新模型,但是当我查看该表的属性窗口中的字段时,它没有修改scale属性。 edmx图。所以我手动将比例从2改为4再次尝试,但它仍然保存2位小数的数据。重新启动Visual Studio仍然无法正常工作,所以我再次尝试从数据库更新模型,这次它就是诀窍。

这不是第一次Visual Studio中的数据库可视化建模器让我感到悲伤。我更喜欢代码优先控制一切,这只是其中一个原因。完整而准确的模型更新绝不是常规。