Update BulkMerge

This commit is contained in:
sunkaixuan 2023-10-04 18:38:48 +08:00
parent afbf4c385a
commit 7c1e70ffc1
3 changed files with 38 additions and 0 deletions

View File

@ -34,6 +34,7 @@ namespace OrmTest
}
public static void Init()
{
UnitBulkMerge.Init();
Unit2121.Init();
UCustom01.Init();
Bulk();

View File

@ -0,0 +1,36 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace OrmTest
{
internal class UnitBulkMerge
{
public static void Init()
{
var db = NewUnitTest.Db;
db.CodeFirst.InitTables<UnitaafdsTest>();
db.DbMaintenance.TruncateTable<UnitaafdsTest>();
var count=db.Fastest<UnitaafdsTest>()
.BulkMerge(new List<UnitaafdsTest>() { new UnitaafdsTest() { Id=Guid.NewGuid()
, CreateTime=DateTime.Now, Name="a"} });
var list=db.Queryable<UnitaafdsTest>().ToList();
list[0].Name = "j";
var count2 = db.Fastest<UnitaafdsTest>()
.BulkMerge(list);
var list2 = db.Queryable<UnitaafdsTest>().ToList();
for (int i = 0; i < 1000; i++)
{
db.Fastest<UnitaafdsTest>()
.BulkMerge(list);
}
}
}
public class UnitaafdsTest
{
[SqlSugar.SugarColumn(IsPrimaryKey = true)]
public Guid Id { get; set; }
public string Name { get; set; }
public DateTime CreateTime{ get; set; }
}
}

View File

@ -216,6 +216,7 @@ namespace SqlSugar
IFastBuilder buider = GetBuider();
buider.Context = context;
await buider.CreateTempAsync<T>(dt);
await buider.ExecuteBulkCopyAsync(dt);
var result = await buider.Merge(dt, this.entityInfo,whereColumns,updateColumns);
//var queryTemp = this.context.Queryable<T>().AS(dt.TableName).ToList();//test
//var result = await buider.UpdateByTempAsync(GetTableName(), dt.TableName, updateColumns, whereColumns);