- 调整 DbContext.EntityChangeInfo 类名为 DbContext.EntityChangeReport.ChangeInfo;

- 调整 IUnitOfWork 接口,移除 OnEntityChange 属性,增加 EntityChangeReport 属性;
This commit is contained in:
28810
2019-10-15 19:18:31 +08:00
parent 375ba5f3cb
commit d7877924a5
9 changed files with 60 additions and 50 deletions

View File

@ -35,8 +35,8 @@ namespace FreeSql
void Open();
/// <summary>
/// 实体变化事件
/// 此工作单元内的实体变化跟踪
/// </summary>
Action<List<DbContext.EntityChangeInfo>> OnEntityChange { get; set; }
DbContext.EntityChangeReport EntityChangeReport { get; }
}
}

View File

@ -3,6 +3,7 @@ using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Common;
using System.Linq;
using System.Threading;
namespace FreeSql
@ -33,7 +34,7 @@ namespace FreeSql
#if ns20
Current.Value = null;
#endif
EntityChangeReport.Clear();
EntityChangeReport?.Report.Clear();
}
public bool Enable { get; private set; } = true;
@ -81,7 +82,8 @@ namespace FreeSql
if (_tran != null)
{
_tran.Commit();
OnEntityChange?.Invoke(EntityChangeReport);
if (EntityChangeReport != null && EntityChangeReport.OnChange != null && EntityChangeReport.Report.Any() == true)
EntityChangeReport.OnChange.Invoke(EntityChangeReport.Report);
}
}
finally
@ -101,11 +103,7 @@ namespace FreeSql
}
}
public Action<List<DbContext.EntityChangeInfo>> OnEntityChange { get; set; }
/// <summary>
/// 工作单元的实体变化记录
/// </summary>
public List<DbContext.EntityChangeInfo> EntityChangeReport { get; } = new List<DbContext.EntityChangeInfo>();
public DbContext.EntityChangeReport EntityChangeReport { get; } = new DbContext.EntityChangeReport();
~UnitOfWork()
{