public override void ConfigureServices(Cuture.Extensions.Modularity.ServiceConfigurationContext context)
        {
            base.ConfigureServices(context);

            var abpContext = GetServiceConfigurationContext(context);

            AbpModule.ConfigureServices(abpContext);
        }
        public override void PostConfigureServices(Cuture.Extensions.Modularity.ServiceConfigurationContext context)
        {
            base.PostConfigureServices(context);

            if (AbpModule is Volo.Abp.Modularity.IPostConfigureServices postConfigureServices)
            {
                var abpContext = GetServiceConfigurationContext(context);
                postConfigureServices.PostConfigureServices(abpContext);
            }
        }
        private static ServiceConfigurationContext GetServiceConfigurationContext(Cuture.Extensions.Modularity.ServiceConfigurationContext context)
        {
            var abpContext = new Volo.Abp.Modularity.ServiceConfigurationContext(context.Services);

            foreach (var item in context.Items)
            {
                abpContext.Items.Add(item);
            }

            return(abpContext);
        }
        public override void PreConfigureServices(Cuture.Extensions.Modularity.ServiceConfigurationContext context)
        {
            base.PreConfigureServices(context);

            ServiceConfigurationContext abpContext = null;

            if (AbpModule is AbpModule)
            {
                abpContext = GetServiceConfigurationContext(context);

                var action = _setServiceConfigurationContextMethodInfo.CreateDelegate(typeof(Action <Volo.Abp.Modularity.ServiceConfigurationContext>), AbpModule) as Action <Volo.Abp.Modularity.ServiceConfigurationContext>;

                action.Invoke(abpContext);
            }

            if (AbpModule is Volo.Abp.Modularity.IPreConfigureServices preConfigureServices)
            {
                abpContext ??= GetServiceConfigurationContext(context);
                preConfigureServices.PreConfigureServices(abpContext);
            }
        }