From f7633e9f674da64309f8840f1b5880cbecc79858 Mon Sep 17 00:00:00 2001 From: 28810 <28810@YEXIANGQIN> Date: Sat, 26 Oct 2019 11:11:05 +0800 Subject: [PATCH] =?UTF-8?q?-=20=E5=A2=9E=E5=8A=A0=20FreeSql.DbContext=20Db?= =?UTF-8?q?Set=20Remove=20=E5=8F=AF=E6=A0=B9=E6=8D=AE=20lambda=20=E6=9D=A1?= =?UTF-8?q?=E4=BB=B6=E5=88=A0=E9=99=A4=E6=95=B0=E6=8D=AE=E7=9A=84=E6=96=B9?= =?UTF-8?q?=E6=B3=95=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- FreeSql.DbContext/DbSet/DbSetAsync.cs | 10 ++++++++++ FreeSql.DbContext/DbSet/DbSetSync.cs | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/FreeSql.DbContext/DbSet/DbSetAsync.cs b/FreeSql.DbContext/DbSet/DbSetAsync.cs index 33f26e2a..de28479d 100644 --- a/FreeSql.DbContext/DbSet/DbSetAsync.cs +++ b/FreeSql.DbContext/DbSet/DbSetAsync.cs @@ -377,6 +377,16 @@ namespace FreeSql _db._entityChangeReport.AddRange(dels.Select(a => new DbContext.EntityChangeReport.ChangeInfo { Object = a.Value, Type = DbContext.EntityChangeType.Delete })); return Math.Max(dels.Length, affrows); } + /// + /// 根据 lambda 条件删除数据 + /// + /// + /// + async public Task RemoveAsync(Expression> predicate) + { + await DbContextExecCommandAsync(); + return await this.OrmDelete(null).Where(predicate).ExecuteAffrowsAsync(); + } #endregion #region AddOrUpdateAsync diff --git a/FreeSql.DbContext/DbSet/DbSetSync.cs b/FreeSql.DbContext/DbSet/DbSetSync.cs index 35f8b091..52068519 100644 --- a/FreeSql.DbContext/DbSet/DbSetSync.cs +++ b/FreeSql.DbContext/DbSet/DbSetSync.cs @@ -410,6 +410,16 @@ namespace FreeSql EnqueueToDbContext(DbContext.EntityChangeType.Delete, state); } } + /// + /// 根据 lambda 条件删除数据 + /// + /// + /// + public int Remove(Expression> predicate) + { + DbContextExecCommand(); + return this.OrmDelete(null).Where(predicate).ExecuteAffrows(); + } #endregion #region AddOrUpdate