【发布时间】:2020-03-29 16:11:55
【问题描述】:
我正在将我的应用程序转换为 .NET Core。这样做时,我遇到了 EF Core 和插入问题。
如果我插入 1 或 2 行,则 EF Core 将执行正常的 SQL INSERT 语句。
但是当我有 3 行或更多行时,它会切换到 MERGE 语句,然后失败:
不允许列引用“inserted.MyKeyColumn”,因为它引用了未在此语句中修改的基表。
我的猜测是,这是因为查询实际上是在一个视图上运行的,该视图上有一个插入触发器来更新视图下的实际表。
就像我说的,当它使用插入语句时,它工作得很好。但是当它尝试使用合并插入时会失败。
有没有办法阻止 EF Core 使用 MERGE 进行插入?
【问题讨论】:
标签: .net-core entity-framework-core ef-core-2.2