Различия между расширениями EF UpdateFromQuery() и EF Plus Update()
В библиотеке Entity.Framework.Extensions (платной) есть метод для обновления сущностей:
context.Customers
.Where(c=>c.XXX = "")
.UpdateFromQuery(c=>new Customer{ Timestamp = DateTime.UtcNow })
Библиотека Entity.Framework.Plus (бесплатная) имеет аналогичный метод для обновления сущностей:
context.Customers
.Where(c=>c.XXX = "")
.Update(c=> new Customer{ Timestamp = DateTime.UtcNow })
В чем разница между этими двумя реализациями?
1 ответ
Решение
Существует небольшая разница между обеими библиотеками для SQL Server из-за того, как они были реализованы. Однако они должны поддерживать все те же сценарии.
Для других провайдеров используется тот же базовый код.
В какой-то момент в будущем мы планируем сохранить только эту функцию Batch Delete
а также Batch Update
только в одной из наших библиотек.
Если мы решим оставить его в рамках Entity Framework Extensions, мы позаботимся о том, чтобы эта функция была доступна бесплатно