From e092d10feeb620b0ecbd22eb89bc5da778638e16 Mon Sep 17 00:00:00 2001
From: 28810 <28810@YEXIANGQIN>
Date: Tue, 4 Aug 2020 21:55:52 +0800
Subject: [PATCH] =?UTF-8?q?-=20=E4=BF=AE=E5=A4=8D=20=E6=96=B0=E5=8A=9F?=
=?UTF-8?q?=E8=83=BD=20BeginEdit=20bug=EF=BC=9B#397?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
FreeSql.DbContext/DbSet/DbSetSync.cs | 2 +-
.../FreeSql.Tests.DbContext/RepositoryTests.cs | 17 +++++++++++++++++
2 files changed, 18 insertions(+), 1 deletion(-)
diff --git a/FreeSql.DbContext/DbSet/DbSetSync.cs b/FreeSql.DbContext/DbSet/DbSetSync.cs
index a6dddb08..2377a59c 100644
--- a/FreeSql.DbContext/DbSet/DbSetSync.cs
+++ b/FreeSql.DbContext/DbSet/DbSetSync.cs
@@ -545,7 +545,7 @@ namespace FreeSql
///
public void BeginEdit(List data)
{
- if (data == null || data.Any() == false) return;
+ if (data == null) return;
if (_table.Primarys.Any() == false) throw new Exception($"不可进行编辑,实体没有主键:{_db.OrmOriginal.GetEntityString(_entityType, data.First())}");
_statesEditing.Clear();
_dataEditing = data;
diff --git a/FreeSql.Tests/FreeSql.Tests.DbContext/RepositoryTests.cs b/FreeSql.Tests/FreeSql.Tests.DbContext/RepositoryTests.cs
index a65081bb..0e65d5a9 100644
--- a/FreeSql.Tests/FreeSql.Tests.DbContext/RepositoryTests.cs
+++ b/FreeSql.Tests/FreeSql.Tests.DbContext/RepositoryTests.cs
@@ -552,6 +552,23 @@ namespace FreeSql.Tests
cts.RemoveAt(1);
Assert.Equal(3, repo.EndEdit());
+
+ g.sqlite.Delete().Where("1=1").ExecuteAffrows();
+ repo = g.sqlite.GetRepository();
+ cts = repo.Select.ToList();
+ repo.BeginEdit(cts);
+
+ cts.AddRange(new[] {
+ new BeginEdit01 { Name = "1" },
+ new BeginEdit01 { Name = "1_1" },
+ new BeginEdit01 { Name = "1_2" },
+ new BeginEdit01 { Name = "1_3" },
+ new BeginEdit01 { Name = "2" },
+ new BeginEdit01 { Name = "2_1" },
+ new BeginEdit01 { Name = "2_2" }
+ });
+
+ Assert.Equal(7, repo.EndEdit());
}
class BeginEdit01
{