我也在找答案,例如,create table dbo.tt( field1 int default(0) not null, field2 int default(0) not null )
在model中
public class tt{
public field1 int {get;set;}
public field2 int {get;set;}
}
public DbSet tts{ get; set; }
在controller中:
var a=new tt(){
a.field1 = 1;
}
db.tts.Add(a);
这时就会报错,因为field2毛有赋值,为NULL,在插入数据库时出错。就象是执行了语句
insert into tt(field1,field2) values (1, NULL) 这样的效果。
其实我想要的效果是 insert into tt(field1) values (1) 。field2就不要管它,让它用默认值。
可EF就是要管,而且硬给个NULL。 怎么让EF按我的意图正确操作数据库呢?