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()