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

  • 相关阅读:
    JS标签获取另一个页面传过来的href值
    jsp/servlet实现简单上传和下载
    servlet跳转页面后图片不显示
    Nginx 配置实例-动静分离
    将博客搬至博客园
    nginx 配置实例-反向代理
    Nginx 简介与安装、常用的命令和配置文件
    nginx 配置实例-负载均衡
    nginx 配置实例-反向代理
    Nginx 简介与安装、常用的命令和配置文件
  • 原文地址:https://www.cnblogs.com/xiaoch/p/13417912.html
Copyright © 2011-2022 走看看