是否有Z.EntityFramework.Extensions的非商业替代品?

时间:2017-02-20 13:01:28

标签: c# sql-update entity-framework-6 sql-insert sql-delete

实体框架在批量插入/更新/删除操作上可能非常慢。即使是经常建议的关闭AutoDetectChanges和/或ValidateOnSaveEnabled的调整也并不总是有帮助。

我在NuGet上遇到过Z.EntityFramework.Extensions,但它似乎是一个商业产品,只能运行一段时间。

https://www.nuget.org/packages/Z.EntityFramework.Extensions/

到目前为止,我真的只需要BulkInsert(),BulkUpdate()和BulkDelete()。

我的问题是:

是否有可靠的非商业库,与Z.EntityFramework.Extensions几乎相同?

感谢任何提示!

1 个答案:

答案 0 :(得分:9)

免责声明:我是Entity Framework Extensions

的所有者

你是对的。这是一种商业产品。

每个月都有免费试用版,但您必须为生产环境购买该产品。

批量插入

对于BulkInsert,有一些免费的替代品,但要小心,他们不支持所有的遗产和&协会,不再受支持:

免责声明:我是Entity Framework Plus

的所有者

批量更新&&批量删除,您可以使用此库:

// DELETE all users which has been inactive for 2 years
ctx.Users.Where(x => x.LastLoginDate < DateTime.Now.AddYears(-2))
         .Delete();

// UPDATE all users which has been inactive for 2 years
ctx.Users.Where(x => x.LastLoginDate < DateTime.Now.AddYears(-2))
         .Update(x => new User() { IsSoftDeleted = 1 });