【发布时间】:2011-02-24 01:48:14
【问题描述】:
我们有一个按日期和时间组织数据的事件系统。我们经常将数据从旧事件复制到新事件作为启动器,然后对其进行修改。
这就是我们在 Linq 中所做的:
- 使用 .ToList() 在本地获取源对象
- 为每个项目创建一个新对象
- 将非主键值复制到新对象并设置新主键
- 将该对象添加到表中
这会产生大量的数据库调用。它至少包含在交易中。
这是 SQL 中的语句。有什么方法可以在不嵌入 SQL 的情况下让 Linq 如此高效?
insert into targetTable (eventID, two, three, four five)
select @newEventId as eventID, two, three, four, five
from targetTable
where eventid = @eventid
【问题讨论】:
标签: entity-framework-4 linq-to-entities