![]() They are done as pure sql and no check is done whether some are prior loaded in memory and are being Tracked. MySQL when running its Test for the first time execute sql command ( local-data): SET GLOBAL local_infile = true īatch Extensions are made on IQueryable DbSet and can be used as in the following code segment. SQLite requires package: SQLitePCLRaw.bundle_e_sqlite3 with call to () Usageīulk Extensions are made on DbContext and are used with entities List (supported both regular and Async methods): context.BulkInsert(entities) context.BulkInsertAsync(entities) Ĭontext.BulkInsertOrUpdate(entities) context.BulkInsertOrUpdateAsync(entities) // UpsertĬontext.BulkInsertOrUpdateOrDelete(entities) context.BulkInsertOrUpdateOrDeleteAsync(entities) // SyncĬontext.BulkUpdate(entities) context.BulkUpdateAsync(entities) Ĭontext.BulkDelete(entities) context.BulkDeleteAsync(entities) Ĭontext.BulkRead(entities) context.BulkReadAsync(entities) Ĭontext.BulkSaveChanges() context.BulkSaveChangesAsync() Net lifecycle, currently v.7 as latest and v.6 as LTS. Its assembly is Strong-Named and Signed with a key. Specific ones have adapter sufix: MainNuget +. Package manager console command for installation: Install-Package EFCore.BulkExtensions Only single specific can be installed in a project, if need more then use main one with all providers. That is main nuget for all Databases, there are also specific ones with single provider for those who need small packages. Instead Test options are SqlServer(Developer or Express), LocalDb( if alongside Developer v.), or with other adapters. SQLite has no Copy tool, instead library uses plain SQL combined with UPSERT.īulk Tests can not have UseInMemoryDb because InMemoryProvider does not support Relational-specific methods. MySQL (8+) is using MySqlBulkCopy combined with ON DUPLICATE for Update. PostgreSQL (9.5+) is using COPY BINARY combined with ON CONFLICT for Update. SQLServer (or SqlAzure) under the hood uses SqlBulkCopy for Insert, Update/Delete = BulkInsert + raw Sql MERGE. When opening issues do write detailed explanation of the problem or feature with reproducible example. Please read CONTRIBUTING for details on code of conduct, and the process for submitting pull requests. If you find this project useful you can mark it by leaving a Github Star ⭐.Īnd even with community license you can make a DONATION: ![]() ![]() If eligible for free usage but still want to help development and have active support, consider purchasing Starter Lic. ![]() If you do not meet criteria for free usage with community license then you have to buy commercial one. *BulkExtensions licensed under Dual License v1.0 (solution to OpenSource funding, cFOSS: conditionallyFree OSS). Supports all 4 mayor sql databases: SQLServer, PostgreSQL, MySQL, SQLite.Ĭheck out Testimonials from the Community and User Comments. Was selected in top 20 EF Core Extensions recommended by Microsoft. Library is Lightweight and very Efficient, having all mostly used CRUD operation. Batch ops: Delete, Update - will be Deprecated since EF7 has native Execute-Up/Del and Truncate. Bulk operations (very fast): Insert, Update, Delete, Read, Upsert, Sync, SaveChanges. ![]()
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |