Kor*_*ius 9 c# code-first entity-framework-4
我在数据库中有一个不能为null的列,我想将其设置为在数据库中具有默认值.问题是实体框架似乎自己创建了一个默认值(例如,int => 0),并完全忽略了数据库中的默认值约束.
有没有办法禁用这个实体框架的默认值?
我发现您可以使用以下属性修饰字段.
[DatabaseGenerated(DatabaseGeneratedOption.Computed)]
Run Code Online (Sandbox Code Playgroud)
本质上,实体框架不允许这样做。您必须对其执行一些代码。这个来自另一个网站的答案似乎已经解决了很多人的问题。
他通过做类似的事情来“破解”它(正如他所说):
public partial class YourEntityClass {
public YourEntityClass() {
this.PropertyNameWithDefaultValue = default(int);
}
}
Run Code Online (Sandbox Code Playgroud)
注1:有人提到它可能在EF4中不起作用
个人说明:抱歉我的英语不好,我通常说法语。