StoreGeneratedPattern和SaveChanges()抛出异常

时间:2013-09-06 11:42:44

标签: c# entity-framework postgresql-9.1

如果我使用StoreGeneratedPattern="None",则SaveChanges()会抛出异常。它尝试使用ID=0保存对象管理员。它对所有其他对象也是如此。 ID始终为0.如果我使用StoreGeneratedPattern="Identity",则会再次抛出异常:

A null store-generated value was returned for a non-nullable member 'AdminId'

我的表中有这个专栏:

adminid integer NOT NULL DEFAULT nextval('admin.seq_admin'::regclass)

编辑 nextval是自动增量的正确命令吗? postgresql中有IDENTITY吗?

1 个答案:

答案 0 :(得分:1)

以nextval开头是自动增量的正确命令。 我在postgresql中遇到了同样的问题,并且厌倦了manny不同的settign在ef和pgsql中,但是当我重新创建表时,问题就消失了,不知怎的,新的序列在最后用1(tasktasktitleid_seq1)自动生成。

编辑:我又遇到了同样的问题所以我做了什么:  1.从表中删除Id。  2.创建了大型系列的新列  3.打开表属性并在约束选项卡中添加新主键。 保存表后,我得到了一个新的自动生成序列的id的默认值,从那时起我的保存表完美无缺。