【Abp简单使用】模块化(.Net5)

2021/11/8 6:12:35

本文主要是介绍【Abp简单使用】模块化(.Net5),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

模块化

为什么要模块化

如果世界使用 Asp.NetCore 的Startup配置,会随着业务代码越来越多,需要在Startup.cs添加很多与业务有关的配置。模块化后,可以把与架构无关的配置项分散到各个模块下。

模块

[DependsOn(
	typeof(AbpAspNetCoreMvcModule) // Host 需要依赖于这个
    // 在这里添加需要使用的模块依赖,或者根据自己需要调整部分内容到新的模块,新模块也是一样的结构。
)]
public class MyModule:AbpModule
{
    public override void ConfigureServices(ServiceConfigurationContext context)
    {
        var services = context.Services;
        // 在这里配置原本写在ConfigureServices方法的内容
    }
    public override void OnApplicationInitialization(ApplicationInitializationContext context)
    {
        var app = context.GetApplicationBuilder();
        var env = context.GetEnvironment();
        // 在这里配置原本写在Configure方法的内容
    }
}

Program.cs

var builder = Host.CreateDefaultBuilder(args)
    .ConfigureWebHostDefaults(webBuilder =>
                              {
                                  webBuilder.UseStartup<Startup>();
                              })
    .UseAutofac();

builder.Build().Run();

Startup.cs

// 清空模块原本配置
public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        // 添加一个应用(模块)
        services.AddApplication<MyProjectNameWebHostModule>();
    }

    public void Configure(IApplicationBuilder app, ILoggerFactory loggerFactory)
    {
        app.InitializeApplication();
    }
}


这篇关于【Abp简单使用】模块化(.Net5)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程