Эффективный способ обновления списка сущностей

Я работаю над проектом, который позволяет пользователю редактировать список сущностей. Я сопоставляю эти объекты для просмотра моделей и отображаю их с полями редактора. Когда пользователь нажимает кнопку отправки, я просматриваю каждую модель и обновляю ее следующим образом:

foreach (var viewModel in viewModels)
{
    //Find the database model and set the value and update
    var entity = unit.EntityRepository.GetByID(fieldModel.ID);
    entity.Value = viewModel.Value;
    unit.EntityRepository.Update(entity);
}

Приведенный выше код работает, однако, как вы можете видеть, нам нужно дважды обратиться к базе данных для каждого объекта (, один раз для извлечения, а другой — для обновления ). Есть ли более эффективный способ сделать это с помощью Entity Framework? Я заметил, что каждое обновление генерирует отдельный оператор SQL. Есть ли способ зафиксировать все обновления после завершения цикла?

27
задан Tony Hinkle 23 May 2016 в 13:02
поделиться