From c4b00dad4906e6e0a8f4dfd5d86f52130fb356e7 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Tue, 22 Apr 2025 20:16:38 +0800 Subject: [PATCH] Add bulkCopy --- Src/Asp.NetCore2/TDengineTest/Demo/ORMTest.cs | 7 ++- .../Demo/ORMTest_Partial/1_BulkCopy.cs | 53 +++++++++++++++++++ 2 files changed, 58 insertions(+), 2 deletions(-) create mode 100644 Src/Asp.NetCore2/TDengineTest/Demo/ORMTest_Partial/1_BulkCopy.cs diff --git a/Src/Asp.NetCore2/TDengineTest/Demo/ORMTest.cs b/Src/Asp.NetCore2/TDengineTest/Demo/ORMTest.cs index a10194161..c0befb3af 100644 --- a/Src/Asp.NetCore2/TDengineTest/Demo/ORMTest.cs +++ b/Src/Asp.NetCore2/TDengineTest/Demo/ORMTest.cs @@ -6,6 +6,7 @@ using System.Linq; using System.Runtime.CompilerServices; using System.Text; using System.Threading.Tasks; +using Dm; using SqlSugar; using SqlSugar.DbConvert; @@ -35,6 +36,9 @@ namespace TDengineTest //自动建表 InsertUsingTag(db); + + //BulkCopy(自动建表 + BulkCopy(db); //生成实体 DbFirst(db); @@ -47,8 +51,7 @@ namespace TDengineTest Console.WriteLine("执行完成"); Console.ReadKey(); - } - + } } } diff --git a/Src/Asp.NetCore2/TDengineTest/Demo/ORMTest_Partial/1_BulkCopy.cs b/Src/Asp.NetCore2/TDengineTest/Demo/ORMTest_Partial/1_BulkCopy.cs new file mode 100644 index 000000000..d7f3b9f08 --- /dev/null +++ b/Src/Asp.NetCore2/TDengineTest/Demo/ORMTest_Partial/1_BulkCopy.cs @@ -0,0 +1,53 @@ +using SqlSugar; +using SqlSugar.TDengine; +using System; +using System.Collections.Generic; +using System.Diagnostics.CodeAnalysis; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +namespace TDengineTest +{ + public partial class ORMTest + { + public static void BulkCopy(ISqlSugarClient db) + { + //建表 + db.CodeFirst.InitTables(); + + //插入 + TDengineFastBuilder.SetTags(db, (tag,stable) => $"{stable}_{tag}", "Tag1");//设置子表格式和Tag字段 + db.Fastest().BulkCopy(new List(){ + new BulkDemo2() + { + Boolean = true, + Tag1 = "a", + Ts = DateTime.Now.AddMilliseconds(1)//没启用微秒纳秒时间不能一样 + + }, + new BulkDemo2() + { + Boolean = false, + Tag1 = "a", + Ts = DateTime.Now.AddSeconds(1) + + }, + new BulkDemo2() + { + Boolean = true, + Tag1 = "b", + Ts = DateTime.Now.AddMilliseconds(333) + }}); + var list= db.Queryable().ToList(); + } + + [STableAttribute(STableName = "BulkDemo2", Tag1 = nameof(Tag1))] + public class BulkDemo2 + { + [SqlSugar.SugarColumn(IsPrimaryKey = true)] + public DateTime Ts { get; set; } + public bool Boolean { get; set; } + public string Tag1 { get; set; } + } + } +}