From e3f60c2a6ad958f257db59e208d4d4d4e855585a Mon Sep 17 00:00:00 2001 From: Mohamed Nazem <109486038+nazem0@users.noreply.github.com> Date: Wed, 19 Aug 2026 18:19:20 +0300 Subject: [PATCH] revert : checking Use(Object/List)ProjectionMapper before resolving the mapper --- .../Services/AbstractKeyReadOnlyAppService.cs | 32 ++++++++----------- 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/AbstractKeyReadOnlyAppService.cs b/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/AbstractKeyReadOnlyAppService.cs index f70953b2ac..0c53ac2705 100644 --- a/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/AbstractKeyReadOnlyAppService.cs +++ b/framework/src/Volo.Abp.Ddd.Application/Volo/Abp/Application/Services/AbstractKeyReadOnlyAppService.cs @@ -44,9 +44,11 @@ public abstract class AbstractKeyReadOnlyAppService? ObjectProjectionMapper { get; } + protected virtual IQueryProjectionMapper? ObjectProjectionMapper => + LazyServiceProvider.LazyGetService>(); - protected virtual IQueryProjectionMapper? ListProjectionMapper { get; } + protected virtual IQueryProjectionMapper? ListProjectionMapper => + LazyServiceProvider.LazyGetService>(); protected virtual bool UseObjectProjectionMapper => ObjectProjectionMapper != null; @@ -57,28 +59,20 @@ public abstract class AbstractKeyReadOnlyAppService repository) { ReadOnlyRepository = repository; - - ObjectProjectionMapper = - LazyServiceProvider.LazyGetService< - IQueryProjectionMapper>(); - - ListProjectionMapper = - LazyServiceProvider.LazyGetService< - IQueryProjectionMapper>(); } public virtual async Task GetAsync(TKey id) { await CheckGetPolicyAsync(); - if (UseObjectProjectionMapper && ObjectProjectionMapper != null) + var projectionMapper = ObjectProjectionMapper; + + if (UseObjectProjectionMapper && projectionMapper != null) { var query = await GetEntityByIdQueryAsync(id); - var dto = - await AsyncExecuter.FirstOrDefaultAsync( - ObjectProjectionMapper.ProjectTo(query) - ) + var dto = + await AsyncExecuter.FirstOrDefaultAsync(projectionMapper.ProjectTo(query)) ?? throw new EntityNotFoundException(typeof(TEntity), id); return dto; @@ -103,10 +97,12 @@ public abstract class AbstractKeyReadOnlyAppService