EntityFramework.Extended Обновление не работает - невозможно преобразовать DynamicProxy

c# entity-framework entity-framework-6 entity-framework-extended sql

Вопрос

Я использую Entity Framework 6 и пытаюсь использовать EntityFramework.Extended для выполнения пакетных обновлений:

db.TicketOrderItems
  .Where(i => !i.IsDeleted && !i.Order.IsCompleted && i.Order.OrderDate < margin)
  .Update(i => new TicketOrderItem { IsDeleted = true });

TicketOrderItem является расширением OrderItem. Когда это выполняется, я получаю следующую ошибку (перевод с немецкого языка, поскольку я получаю его на немецком языке):

db.TicketOrderItems
  .Where(i => !i.IsDeleted && !i.Order.IsCompleted && i.Order.OrderDate < margin)
  .Update(i => new TicketOrderItem { IsDeleted = true });

Я уже отключил ленивую загрузку и создание прокси (и проверил ее с помощью отладки, что не создаются прокси):

db.TicketOrderItems
  .Where(i => !i.IsDeleted && !i.Order.IsCompleted && i.Order.OrderDate < margin)
  .Update(i => new TicketOrderItem { IsDeleted = true });

Есть ли способ исправить это?
Или это ошибка в «еще не окончательной» EF 6 или неспособность EF.Extended и EF 6?

Принятый ответ

Это работает не с текущей версией EF.Extended.


Популярные ответы

Похоже, EntityFramework.Extended не работает с EF 6. Проблема в изменении пространства имен EF вызывает проблему. Вы можете вытащить расширенный источник, удалить старую ссылку EF и изменить пространства имен, связанные с EF, из

using System.Data.*;

в

using System.Data.*;



Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему