在Entity Framework中,默认值约束功能尚未实现,我自己尝试了,然后在这里阅读它.所以,我想知道获得这个的最佳方法是什么.我应该使用存储过程还是触发类似的东西?并且在实体框架中添加了更好或更新的东西,因为我不想在代码中明确地处理它.这将是一个很大的帮助.
在Database First方法中,实体框架忽略默认值约束.但是,实体框架显示列的默认值属性.在Model.edmx查看器中选择一个实体 - >转到列 - >属性 - >默认值.在其中添加列的默认值,就是这样.
就我而言,我通过代码更新了Model.edmx文件.代码从Db获取默认约束,然后更新Model.edmx文件中的概念模型,因为我有大量的默认值列.
默认值约束问题在所有版本的Entity Framework中持续存在,直到EF6,并且似乎在Entity Framework 7中得到解决
最简单的方法是从C#初始化您的属性,从而确保默认值.
对于Database First,设计人员会忽略您的SQL默认值,您必须告诉它将您的列视为Computed:选择您的实体 - > go the column - > properties - >将StoreGeneratedPattern设置为Computed(默认为None)