【发布时间】:2017-02-04 18:44:45
【问题描述】:
这适用于 EF5,但 EF6 似乎存在问题。
我们正在尝试使用 EF6 将新行保存到表中。主键列被标记为 Identity 值,我们在表上有一个插入触发器。
当我们调用 db.saveChanges() 时,它总是尝试使用 0 作为主键列值。
如果我们通过 Toad 插入记录,它会正确使用触发器。所以触发器正在工作。
如果我们将触发器更改为检查 0 而不是 null,那么它也可以工作。
还有其他人在使用 EF6 时遇到过这个问题吗?
谢谢, 乔
【问题讨论】:
-
在 EF4 中,我总是必须通过从对偶中选择序列值来获取新的主键。然后任何插入都使用了正确的主键,现在这可用于插入到子表中。
-
@kevinsky,这基本上就是他的 BI 触发器可能会做的事情。
-
您使用的是什么版本的 Oracle.Net?
-
12.1.022版本的Oracle.Net
-
您是否使用 Database First/EDMX 生成?如果是这样,StoreGeneratedPattern 设置为什么?
标签: asp.net-mvc oracle entity-framework