Wir wissen alle, dass ef schlechte Unterstützung für Batch-Operationen hat; wenn man ef verwendet, um mehrere Datenstücke in Batches einzufügen oder mehrere Anweisungen in Batches zu aktualisieren oder zu löschen, ist das Zeitverschwendung – wie optimiert man also EF-Operationen für eine große Datenmenge?
Kein Unsinn, mach zuerst einen Screenshot, es gibt keine Vergleichstabelle vor und nach der Optimierung!
Statistiken im Fall, in dem die gleichen 3814 Datenstücke eingefügt werden, und die Datenbank ist SQL Server
Vor der Optimierung:Die Durchschnittszeit betrug 2479 Sekunden
Nach der Optimierung:Die durchschnittliche Zeit betrug 149 Sekunden
Der Einfügungscode für den Anruf lautet wie folgt:
Programmieren Sie vor der Optimierung:
Optimierter Code:
Weitere Testcodes:
Optimierungsschema:
Wir verwenden eine Drittanbieter-Erweiterung "Z.EntityFramework.Extensions", offizielle Homepage: http://entityframework-extensions.net/
Einführen:
Entity Framework: Bulk Insert, BulkSaveChanges, Bulk Update, Bulk Delete, Bulk Merge und Bulk Sync.
Unterstützt: SQL Server, SQL Azure, SQL Compact, Oracle, MySQL, SQLite und PostgreSQL.
Diese Bibliothek ist nicht kostenlos. Die Probezeit endet immer am Monatsende.
NuGet-Installationsbefehl:
|