From 1bdddc7d63e8e7c157989b5f2cf51c75e635f372 Mon Sep 17 00:00:00 2001 From: mehmetuken Date: Mon, 20 May 2019 11:13:06 +0300 Subject: [PATCH] Entity has tenant id property. --- .../Abp/Application/Services/AsyncCrudAppService.cs | 2 +- .../Volo/Abp/Application/Services/CrudAppService.cs | 2 +- .../Abp/Application/Services/CrudAppServiceBase.cs | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/AsyncCrudAppService.cs b/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/AsyncCrudAppService.cs index 4cc9f48630..151212925a 100644 --- a/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/AsyncCrudAppService.cs +++ b/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/AsyncCrudAppService.cs @@ -91,7 +91,7 @@ namespace Volo.Abp.Application.Services var entity = MapToEntity(input); - if(entity is IMultiTenant) + if(entity is IMultiTenant && !HasTenantIdProperty(entity)) { TryToSetTenantId(entity); } diff --git a/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/CrudAppService.cs b/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/CrudAppService.cs index 744d472de5..2595bc6edd 100644 --- a/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/CrudAppService.cs +++ b/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/CrudAppService.cs @@ -88,7 +88,7 @@ namespace Volo.Abp.Application.Services var entity = MapToEntity(input); - if(entity is IMultiTenant) + if(entity is IMultiTenant && !HasTenantIdProperty(entity)) { TryToSetTenantId(entity); } diff --git a/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/CrudAppServiceBase.cs b/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/CrudAppServiceBase.cs index 0e2efa2dd5..b678362c53 100644 --- a/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/CrudAppServiceBase.cs +++ b/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/CrudAppServiceBase.cs @@ -154,11 +154,6 @@ namespace Volo.Abp.Application.Services protected virtual void TryToSetTenantId(TEntity entity) { - if (entity is IMultiTenant tenantEntity && tenantEntity.TenantId.HasValue) - { - return; - } - var tenantId = CurrentTenant.Id; if (!tenantId.HasValue) @@ -173,5 +168,10 @@ namespace Volo.Abp.Application.Services propertyInfo.SetValue(entity, tenantId, null); } } + + protected virtual bool HasTenantIdProperty(TEntity entity) + { + return entity.GetType().GetProperty(nameof(IMultiTenant.TenantId)) != null; + } } }