【发布时间】:2017-01-16 09:15:00
【问题描述】:
我有一个使用 EntityFramework 代码优先定义的一对多关系。类似于:包含 SmallEntitiesList(SmallEntity 列表)的 BigEntity。
每当我更新该对象的 SmallEntities 列表并执行 dbContext.SaveChanges() 时,我可以在 SQL 记录器中看到 Entity Framework 通过为每个项目往返数据库来插入这些项目 .
所以日志看起来像这样:
每个插入看起来像这样:
DECLARE
updatedRowid ROWID;
BEGIN
INSERT INTO SOME_TABLE(...)
VALUES (...)
RETURNING ROWID INTO updatedRowid;
OPEN '' /* @outParameter */ FOR SELECT
SOME_TABLE
FROM SOME_TABLE
WHERE ROWID = updatedRowid;
END;
有没有办法让实体框架表现出不同的行为,并让这些插入物为每个插入物访问数据库?
更新:已经尝试过 BulkInsert(不支持 Oracle DevArt,这是我正在使用的)。
【问题讨论】:
-
请查看我的回答,希望对您有所帮助。我在我的项目中使用它。
标签: c# .net entity-framework ef-code-first