zoukankan      html  css  js  c++  java
  • abp学习日志六(模块化开发)

    模块化

    ABP本身是一个包含许多nuget包的模块化框架.它还提供了一个完整的基础架构来开发你自己的具有实体, 服务, 数据库集成, API, UI组件等等功能的应用程序模块.

    模块化是根据项目进行划分的,具体怎么划分应该根据业务来定义,abp对模块化的项目做了一些包装。

    继承AbpModule

    比如EntityFramework模块吧,有如下源码

    using Microsoft.Extensions.DependencyInjection;
    using Volo.Abp;
    using Volo.Abp.EntityFrameworkCore;
    using Volo.Abp.Modularity;
    
    namespace LY.Shop.EntityFrameworkCore
    {
        [DependsOn(
            typeof(ShopDomainModule),
            typeof(AbpEntityFrameworkCoreModule)
        )]
        public class ShopEntityFrameworkCoreModule : AbpModule
        {
            public override void ConfigureServices(ServiceConfigurationContext context)
            {
                context.Services.AddAbpDbContext<ShopDbContext>(options =>
                {
                    options.AddDefaultRepositories();
                    /* Add custom repositories here. Example:
                     * options.AddRepository<Question, EfCoreQuestionRepository>();
                     */
                });
            }
    
            public override void OnApplicationInitialization(ApplicationInitializationContext context)
            {
                base.OnApplicationInitialization(context);
            }
        }
    }
    

    这里有两个常用的方法

    ConfigureServices
    这个方法可以理解成startup中的ConfigureServices方法

    OnApplicationInitialization
    这个方法可以理解成startup中的Configure

    总结

    关于模块化确实我理解的也就这么多,没有太多可记录的,总之就是按照abp的约束做,这样才能保证一个统一的风格。

    abp的模块化分层

    请看官方文档,说的非常清楚
    https://docs.abp.io/zh-Hans/abp/latest/Best-Practices/Module-Architecture

    https://docs.abp.io/zh-Hans/abp/latest/Best-Practices/Module-Architecture

  • 相关阅读:
    08-蓝图&单元测试
    07-多对多操作
    JAVA 判断字符串是否可转化为JSONObject、JSONArray
    git常用命令
    线程和进程的一些基本概念
    JavaWeb学习总结(七):通过Servlet生成验证码及其应用 (BufferedImage类)
    JavaWeb学习总结(十):Session简单使用
    Ubuntu16.04 安装maven
    Ubuntu16.04 安装redis
    Ubuntu16.04 下安装tomcat
  • 原文地址:https://www.cnblogs.com/xiaoch/p/13417912.html
Copyright © 2011-2022 走看看