mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-04-22 10:42:52 +08:00
- 修复 UnitOfWorkManager + Repository.SaveMany 事务切换问题;
This commit is contained in:
parent
98a588ada9
commit
9073ed71a3
@ -29,7 +29,7 @@ namespace FreeSql
|
||||
public abstract partial class DbSet<TEntity> : IDbSet where TEntity : class
|
||||
{
|
||||
internal DbContext _db { get; set; }
|
||||
internal IUnitOfWork _uow { get; set; }
|
||||
internal virtual IUnitOfWork _uow { get; set; }
|
||||
|
||||
protected virtual ISelect<TEntity> OrmSelect(object dywhere)
|
||||
{
|
||||
@ -163,7 +163,7 @@ namespace FreeSql
|
||||
return this;
|
||||
}
|
||||
|
||||
Dictionary<Type, DbSet<object>> _dicDbSetObjects = new Dictionary<Type, DbSet<object>>();
|
||||
internal Dictionary<Type, DbSet<object>> _dicDbSetObjects = new Dictionary<Type, DbSet<object>>();
|
||||
DbSet<object> GetDbSetObject(Type et)
|
||||
{
|
||||
if (_dicDbSetObjects.TryGetValue(et, out var tryds)) return tryds;
|
||||
|
@ -802,3 +802,14 @@
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
Microsoft.Extensions.DependencyInjection.FreeSqlRepositoryDependencyInjection.AddFreeRepository(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action{FreeSql.FluentDataFilter},System.Reflection.Assembly[])">
|
||||
<summary>
|
||||
批量注入 Repository,可以参考代码自行调整
|
||||
</summary>
|
||||
<param name="services"></param>
|
||||
<param name="globalDataFilter"></param>
|
||||
<param name="assemblies"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
|
@ -16,6 +16,18 @@ namespace FreeSql
|
||||
_repo = repo;
|
||||
}
|
||||
|
||||
IUnitOfWork _uowPriv;
|
||||
internal override IUnitOfWork _uow
|
||||
{
|
||||
get => _uowPriv;
|
||||
set
|
||||
{
|
||||
_uowPriv = value;
|
||||
foreach (var dbset in _dicDbSetObjects.Values) //配合 UnitOfWorkManager
|
||||
dbset._uow = _uowPriv;
|
||||
}
|
||||
}
|
||||
|
||||
protected override ISelect<TEntity> OrmSelect(object dywhere)
|
||||
{
|
||||
var select = base.OrmSelect(dywhere).AsTable(_repo.AsTableSelectValueInternal);
|
||||
|
Loading…
x
Reference in New Issue
Block a user