Abp vNext 模块化

Abp vNext

在Abp vNext框架当中呢,模块化管理可以说是最基本的要求,他把程序按照模块进行切分,模块之间也存在相互依赖的关系,当然模块切分可以按照业务,也可以按照功能,最后一个一个组装拼接成整个项目

Abp vNext模块化生命周期

每一次建立一个新的模块各模块之间都是相互独立的,都会进行asp.net core 的服务注册等等操作。
在asp.net core 原有的项目中,我们知道程序的启动项是基于startup里面的三大件进行服务注册,初始化,以及中间件等等操作的
而在abp.vnext当中呢,这些操作都留在了模块里面

在abp.vnext当中呢,所有的模块必须都去实现 AbpModule这个抽象类

namespace abp.vnext_module
{

    //[DependsOn(typeof(DemoModule))]   //确定模块之间的相互依赖关系
    public class DemoModule:AbpModule
    {
        /// <summary>
        ///  是将你的服务添加到依赖注入系统并配置其他模块的主要方法。
        /// </summary>
        public override void ConfigureServices(ServiceConfigurationContext context)
        {
            //手动注入服务注入的地方
            Console.WriteLine("ConfigureServices");
        }

        public override void PreConfigureServices(ServiceConfigurationContext context)
        {
            //SkipAutoServiceRegistration = true;//不需要自动注入  一般不这样操作
            Console.WriteLine("PreConfigureServices");
        }

        public override void OnPreApplicationInitialization(ApplicationInitializationContext context)
        {
            Console.WriteLine("OnPreApplicationInitialization");
        }
        /// <summary>
        /// 初始化配置的所有模块的所有服务
        /// </summary>
        /// <param name="context"></param>
        public override void OnApplicationInitialization(ApplicationInitializationContext context)
        {
            Console.WriteLine("OnApplicationInitialization");
        }

        public override void OnPostApplicationInitialization(ApplicationInitializationContext context)
        {
            Console.WriteLine("OnPostApplicationInitialization");
        }

        /// <summary>
        /// 程序关闭 销毁模块
        /// </summary>
        /// <param name="context"></param>
        public override void OnApplicationShutdown(ApplicationShutdownContext context)
        {
            Console.WriteLine("OnApplicationShutdown");
        }
    }
}

看上面的执行顺序,
在这里插入图片描述
在真正执行的加载的时候,会先执行预加载 然后再执行ConfigureServices这个和asp.net core 里面是一样的
最后在程序关闭的时候执行模块销毁

生命周期流程图

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小盆友你是否很有多问号

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值