У нас есть система событий, которая организует данные по дате и времени.Мы часто копируем данные из старого события в новое событие как стартер, а затем модифицируем его.
Это то, что мы делаем в Linq:
- Получите исходные объекты локально с помощью .ToList ()
- Для каждого элемента создайте новый объект
- Скопируйте значения неосновного ключа в новый объект и установите новый первичный ключ
- Добавьте этот объект в таблицу
Это генерирует огромное количество вызовов базы данных.По крайней мере, он заключен в транзакцию.
Это утверждение в SQL.Есть ли способ сделать Linq таким эффективным без встраивания SQL?
insert into targetTable (eventID, two, three, four five)
select @newEventId as eventID, two, three, four, five
from targetTable
where eventid = @eventid