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{}
由于abp会根据设置模块依赖顺序加载初始化模块(DependsOn),
那也可以这样做:在一个项目中,非web的moudle中不设置依赖项,而是去web目录下按照模块加载顺序去配置依赖项(参考以上代码块)
但是,这不是abp推荐的依赖设置方式,应该遵循任意一个模块(程序集)单独拿出均可引入至其他项目(而不用担心未设置它的依赖项)
abp 模块系统的更多相关文章
- ABP(现代ASP.NET样板开发框架)系列之4、ABP模块系统
点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之4.ABP模块系统 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)” ...
- ABP模块系统
ABP模块系统 基于DDD的现代ASP.NET开发框架--ABP系列之4.ABP模块系统 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称. ABP ...
- ABP+AdminLTE+Bootstrap Table权限管理系统第三节--abp分层体系,实体相关及ABP模块系统
返回总目录:ABP+AdminLTE+Bootstrap Table权限管理系统一期 ABP模块系统 说了这么久,还没有详细说到abp框架,abp其实基于DDD(领域驱动设计)原则的细看分层如下: 再 ...
- ABP官方文档翻译 1.3 模块系统
ABP模块系统 介绍 模块定义 生命周期方法 PreInitialize Initialize PostInitialize Shutdown 模块依赖 插件系统 ASP.NET Core ASP.N ...
- ABP框架 - 模块系统
文档目录 本节内容: 简介 模块定义 生命周期方法 PreInitialize(预初始化) Initialize(初始化) PostInitialize(提交初始化) Shutdown(关闭) 模块依 ...
- [Abp vNext 源码分析] - 2. 模块系统的变化
一.简要说明 本篇文章主要分析 Abp vNext 当中的模块系统,从类型构造层面上来看,Abp vNext 当中不再只是单纯的通过 AbpModuleManager 来管理其他的模块,它现在则是 I ...
- ABP之模块系统
简介 ASP.NET Boilerplate提供了构建模块的基础结构,并将它们组合在一起以创建应用程序. 模块可以依赖于另一个模块. 通常,一个程序集被视为一个模块. 如果创建具有多个程序集的应用程序 ...
- [Abp 源码分析]二、模块系统
0.简介 整个 Abp 框架由各个模块组成,基本上可以看做一个程序集一个模块,不排除一个程序集有多个模块的可能性.可以看看他官方的这些扩展库: 可以看到每个项目文件下面都会有一个 xxxModule ...
- 【ABP框架系列学习】模块系统(4)
0.引言 ABP提供了构建模块和通过组合模块以创建应用程序的基础设施.一个模块可以依赖于另外一个模块.通常,程序集可以认为是模块.如果创建多个程序集的应用程序,建议为每个程序集创建模块定义. 当前,模 ...
随机推荐
- [js常用]页面滚动的顶部,指定位置或底部,平滑滚动
js平滑滚动到顶部.底部.指定地方 <!DOCTYPE html> <html lang="en"> <head> <meta chars ...
- 排序算法(5)--Selection Sorting--选择排序[2]--Heap Sort--堆排序
1.基本思想 具有n个元素的序列 (h1,h2,...,hn),当且仅当满足(hi>=h2i,hi>=2i+1)或(hi<=h2i,hi<=2i+1) (i=1,2,...,n ...
- 3.配置Spring+SpringMvc+Mybatis(分库or读写分离)--Intellij IDAE 2016.3.5
作者QQ:1095737364 QQ群:123300273 欢迎加入! 建立好maven多模块项目后,开始使用ssm传统的框架:http://www.cnblogs.com/yysbol ...
- Origin绘制双Y轴图的方法
1.已有数据绘图如下,其中网络流量的单位是M Bytes/s,与另外两组数据的单位(时间)不同,现在要为其添加右侧Y轴. 2.首先选中该图像,找到工具条,点击第三个按钮“Add Right-Y Lay ...
- Mobileye众包地图REM的一些整理
Mobileye的CEO Shashua在CVPR2016上介绍了Road Experience Management(REM),目前仍是视觉高精度地图和定位的(几乎)唯一的解决方案.这两年间,mob ...
- flutter 监控返回键
return new WillPopScope( child: Scaffold( body: new Center( child: new Column( children: <Widget& ...
- MVC与单元测试实践之健身网站(二)-管理员模块
开始动手做这个项目时,发现无法做到完全的先设计.再编码,于是决定分模块进行,从管理员模块开始设计.编码,而且接口就已经改了好几次了. 管理员模块涉及的功能有登录和后台对管理员的维护,其中也涉及前端的开 ...
- url override and HttpSession implements session for real
无论cookie有没有禁用,HttpSession都有效 package com.test; import javax.servlet.ServletException; import javax.s ...
- svn其它
参考地址: http://www.cnblogs.com/mymelon/p/5483215.html
- myeclipse 10配置jboss 7.1.1无法启动Error: Could not create the Java Virtual Machine
myeclipse 10中配置jboss 7.1.1,多写了个server name,结果死活启动不了.后来,发现了这个细节. 错误显示: 错误源头: 删掉Server name后,可以完美启动 小问 ...