abp 模块系统

abp模块系统:ABP理论学习之模块系统

ABP提供了构建模块并将这些模块组合起来创建应用的基础设施。一个模块可以依赖另一个模块。一般来说,一个程序集可以认为是一个模块。一个模块是由一个派生了AbpModule的类定义的。

ABP按照依赖的顺序调用这些方法。如果模块A依赖于模块B,那么模块B在模块A之前初始化。方法执行的正确顺序是:PreInitialize-B, PreInitialize-A, Initialize-B, Initialize-A, PostInitialize-B and PostInitialize-A。这对于所有的依赖图都是成立的。


    [DependsOn(
        typeof(AbpZeroCoreModule),
        typeof(AbpWebSignalRModule),
        typeof(AbpAutoMapperModule),
        //typeof(AbpHangfireModule), - ENABLE TO USE HANGFIRE INSTEAD OF DEFAULT JOB MANAGER
        typeof(AbpWebMvcModule),
        typeof(AbpZeroEntityFrameworkModule),
        typeof(AbpWebApiModule),

        typeof(EasymanCommonModule),//Easyman.Common
        typeof(EasymanCoreModule),//Easyman.Core
        typeof(EasymanApplicationModule),//Easyman.Application
        typeof(EasymanDataModule),//Easyman.EntityFramework
        typeof(EasymanViewMoudle),//Easyman.FwWeb

        typeof(EmProjectCommonModule),//Em.Project.Common
        typeof(EmProjectCoreModule),//Em.Project.Core
        typeof(EmProjectAppModule),//Em.Project.Application
        typeof(EmProjectDataModule),//Em.Project.EntityFramework
        typeof(EasymanWebApiModule)//Em.Project.WebApi
       )]
    public class EasymanWebModule : AbpModule{}
View Code

由于abp会根据设置模块依赖顺序加载初始化模块(DependsOn),

那也可以这样做:在一个项目中,非web的moudle中不设置依赖项,而是去web目录下按照模块加载顺序去配置依赖项(参考以上代码块)

但是,这不是abp推荐的依赖设置方式,应该遵循任意一个模块(程序集)单独拿出均可引入至其他项目(而不用担心未设置它的依赖项)

转载于:https://www.cnblogs.com/senyier/p/7306721.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值