@@ -45,10 +45,6 @@ public class MapperConfiguration : IGlobalConfiguration
4545    private  readonly  LockingConcurrentDictionary < MapRequest ,  Delegate >  _executionPlans ; 
4646    private  readonly  ConfigurationValidator  _validator ; 
4747    private  readonly  Features < IRuntimeFeature >  _features  =  new ( ) ; 
48-     private  readonly  int  _recursiveQueriesMaxDepth ; 
49-     private  readonly  int  _maxExecutionPlanDepth ; 
50-     private  readonly  bool  _enableNullPropagationForQueryMapping ; 
51-     private  readonly  Func < Type ,  object >  _serviceCtor ; 
5248    private  readonly  bool  _sealed ; 
5349    private  readonly  bool  _hasOpenMaps ; 
5450    private  readonly  HashSet < TypeMap >  _typeMapsPath  =  new ( ) ; 
@@ -71,11 +67,7 @@ public MapperConfiguration(MapperConfigurationExpression configurationExpression
7167        _mappers  =  configuration . Mappers . ToArray ( ) ; 
7268        _executionPlans  =  new ( CompileExecutionPlan ) ; 
7369        _validator  =  new ( configuration ) ; 
74-         _serviceCtor  =  configuration . ServiceCtor ; 
75-         _enableNullPropagationForQueryMapping  =  configuration . EnableNullPropagationForQueryMapping  ??  false ; 
76-         _maxExecutionPlanDepth  =  configuration . MaxExecutionPlanDepth  +  1 ; 
7770        _projectionBuilder  =  new ( CreateProjectionBuilder ) ; 
78-         _recursiveQueriesMaxDepth  =  configuration . RecursiveQueriesMaxDepth ; 
7971        Configuration  =  new ( ( IProfileConfiguration ) configuration ) ; 
8072        int  typeMapsCount  =  Configuration . TypeMapsCount ; 
8173        int  openTypeMapsCount  =  Configuration . OpenTypeMapsCount ; 
@@ -233,15 +225,16 @@ LambdaExpression GenerateObjectMapperExpression(in MapRequest mapRequest, IObjec
233225            return  Lambda ( fullExpression ,  source ,  destination ,  ContextParameter ) ; 
234226        } 
235227    } 
236-     ProjectionBuilder  CreateProjectionBuilder ( )  =>  new ( this ,  _validator . Expression . ProjectionMappers . ToArray ( ) ) ; 
228+     IGlobalConfigurationExpression  ConfigurationExpression  =>  _validator . Expression ; 
229+     ProjectionBuilder  CreateProjectionBuilder ( )  =>  new ( this ,  ConfigurationExpression . ProjectionMappers . ToArray ( ) ) ; 
237230    IProjectionBuilder  IGlobalConfiguration . ProjectionBuilder  =>  _projectionBuilder . Value ; 
238-     Func < Type ,  object >  IGlobalConfiguration . ServiceCtor  =>  _serviceCtor ; 
239-     bool  IGlobalConfiguration . EnableNullPropagationForQueryMapping  =>  _enableNullPropagationForQueryMapping ; 
240-     int  IGlobalConfiguration . MaxExecutionPlanDepth  =>  _maxExecutionPlanDepth ; 
231+     Func < Type ,  object >  IGlobalConfiguration . ServiceCtor  =>  ConfigurationExpression . ServiceCtor ; 
232+     bool  IGlobalConfiguration . EnableNullPropagationForQueryMapping  =>  ConfigurationExpression . EnableNullPropagationForQueryMapping . GetValueOrDefault ( ) ; 
233+     int  IGlobalConfiguration . MaxExecutionPlanDepth  =>  ConfigurationExpression . MaxExecutionPlanDepth   +   1 ; 
241234    private  ProfileMap  Configuration  {  get ;  } 
242235    ProfileMap [ ]  IGlobalConfiguration . Profiles  =>  Profiles ; 
243236    internal  ProfileMap [ ]  Profiles  {  get ;  } 
244-     int  IGlobalConfiguration . RecursiveQueriesMaxDepth  =>  _recursiveQueriesMaxDepth ; 
237+     int  IGlobalConfiguration . RecursiveQueriesMaxDepth  =>  ConfigurationExpression . RecursiveQueriesMaxDepth ; 
245238    Features < IRuntimeFeature >  IGlobalConfiguration . Features  =>  _features ; 
246239    List < MemberInfo >  IGlobalConfiguration . SourceMembers  =>  _sourceMembers ; 
247240    List < ParameterExpression >  IGlobalConfiguration . Variables  =>  _variables ; 
0 commit comments