快捷搜索:  as  test  1111  test aNd 8=8  test++aNd+8=8  as++aNd+8=8  as aNd 8=8

顶级贵宾网站:Entity Framework的默认值BUG解决方法



前几天常应用.Net 3.5里的Entity Fr顶级贵宾网站amework做个网站的时刻,发清楚明了一个问题:添加记录时,对付DateTime型的数据,无法应用数据库的默认值。

虽然不是什么严重的问题,但牛性格上来了 ,就行办理这个问题。

详细的环境是这样的,我的数据库有个Users表,三个字段,id,username,createtime。

id是int型,自增长,主键

username是nvchar(10)型,不容许为空

create顶级贵宾网站time是DateTime型字段,不容许为空,默认值 是getdate()

假如用Entity框架天生实体类,直接添加数据,不指定createtime,那就会在SaveChanges时掉足:

using (LinqDemoEntities lde = new LinqDemoEntities())

{

Users user = new Users

{

name = 顶级贵宾网站"Admin"

};

lde.AddToUsers(user);

ld顶级贵宾网站e.SaveChanges();

}

着末在别人的辅导下,才知道这是EF的一个Bug,必要将edmx文件里,createtime字段加上 StoreGenerat顶级贵宾网站edPattern="Identity" 属性才行。

这样就能应用数据库默认值了。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

您可能还会对下面的文章感兴趣: