我正在使用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的扩展。当这个现在执行时,我得到以下错误(翻译自德语,因为我用德语翻译):
The EntityFramework.Reflection.DynamicProxy-type can not implicitly be converted
to System.Data.Objects.ObjectQuery<NAMESPACE.TicketOrderItem>.
我已经禁用了延迟加载和代理生成(并通过调试验证了它,没有生成代理):
db.Configuration.LazyLoadingEnabled = false;
db.Configuration.ProxyCreationEnabled = false;
有没有办法解决这个问题?
或者这是“尚未最终”EF 6中的错误还是EF.Extended和EF 6之间的不兼容?
答案 0 :(得分:3)
看起来EntityFramework.Extended尚不适用于EF 6。一些EF名称空间更改导致了问题。您可以从
中提取扩展源,删除旧的EF引用并更改与EF相关的命名空间using System.Data.*;
到
using System.Data.Entity.Core.*;
答案 1 :(得分:0)
这不适用于当前版本的EF.Extended。