C# · 12月 27, 2021

c# – 禁用实体框架的默认值生成(Code First)

我在数据库中有一列不能为空,我想将其设置为在数据库中具有默认值.问题是实体框架似乎创建了一个默认值本身(例如,int => 0),并完全忽略了数据库中的默认值约束.

有没有办法禁用实体框架的默认值?

解决方法 实体框架本身不允许这样做.你必须做一些代码. This answer from another site似乎已经解决了很多人的问题.

他通过做这样的事情“扯”了(正如他所说)

public partial class YourEntityClass { public YourEntityClass() { this.PropertyNameWithDefaultValue = default(int); }}

注1:有人提到它可能在EF4中无效

个人笔记:对不起,我的英文,我通常会说法语.