有没有办法关闭特定语句或DbContext的Entity Framework并发检查?
我可以看到EF在插入后直接生成一个选择。 E.g。
-- Insert Statement
INSERT X (a, b, c)
VALUE (m, n, o)
-- Concurrency Check
SELECT ID
FROM X
WHERE @@ROWCOUNT > 0 AND ID = scope_identity()
我需要将其关闭的原因是因为我正在使用一个具有Insert触发器的表来替换插入,执行一些逻辑,然后在内部插入它。因此,scope_identity()会因为触发器中的范围为BEGIN
和END
而丢失。
不幸的是我无法更改触发器:-(因为它超出了我的控制范围:-(触发器用于确保特定字段的任何组合不会在表中重复,因此所有者不会将其删除。
有没有办法告诉EF完全省略并发检查或告诉它使用@@IDENTITY
?