From d042fce5e7f40fbda834f9b9b3eecf94ad188d64 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Sat, 25 Mar 2023 11:18:33 +0800 Subject: [PATCH] Add: db.Storageabl(data).ExecuteSqlBulkCopy() --- .../SqlSugar/Abstract/SaveableProvider/Storageable.cs | 10 ++++++++++ Src/Asp.Net/SqlSugar/Interface/IStorageable.cs | 2 ++ 2 files changed, 12 insertions(+) diff --git a/Src/Asp.Net/SqlSugar/Abstract/SaveableProvider/Storageable.cs b/Src/Asp.Net/SqlSugar/Abstract/SaveableProvider/Storageable.cs index 57dfd155b..0fc32847b 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/SaveableProvider/Storageable.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/SaveableProvider/Storageable.cs @@ -107,6 +107,16 @@ namespace SqlSugar result +=await x.AsUpdateable.ExecuteCommandAsync(); return result; } + public int ExecuteSqlBulkCopy() + { + var storage = this.ToStorage(); + return storage.BulkCopy() + storage.BulkUpdate(); + } + public async Task ExecuteSqlBulkCopyAsync() + { + var storage =await this.ToStorageAsync(); + return await storage.BulkCopyAsync() + await storage.BulkUpdateAsync(); + } public StorageableResult ToStorage() { if (whereFuncs == null || whereFuncs.Count == 0) diff --git a/Src/Asp.Net/SqlSugar/Interface/IStorageable.cs b/Src/Asp.Net/SqlSugar/Interface/IStorageable.cs index 0897a7a5b..58fccdb2b 100644 --- a/Src/Asp.Net/SqlSugar/Interface/IStorageable.cs +++ b/Src/Asp.Net/SqlSugar/Interface/IStorageable.cs @@ -27,6 +27,8 @@ namespace SqlSugar IStorageable As(string tableName); int ExecuteCommand(); Task ExecuteCommandAsync(); + int ExecuteSqlBulkCopy(); + Task ExecuteSqlBulkCopyAsync(); } public class StorageableInfo where T : class, new()