如何在比特框架中的不同项目中进行模块化依赖注册?

问题描述 投票:1回答:1

我在使用位框架的解决方案中有很多项目。我需要在每个项目中注册接口,并进行模块化注册。怎么办?

c# .net bit bit-framework
1个回答
3
投票

想象你有以下模块:“FrontApp + SubSys1 + SubSys2”

AppStartup和以前一样有两个修改:

1-在AssemblyContainer.Current.Init();之后添加以下代码:

AssemblyContainer.Current.AddAppAssemblies(typeof(SubSys1AppModule).GetTypeInfo().Assembly, typeof(SubSys2AppModule).GetTypeInfo().Assembly);

2-将GetAppModules的正文更改为以下内容:

public IEnumerable<IAppModule> GetAppModules()
{
    yield return this;
    yield return new SubSys1AppModule();
    yield return new SubSys2AppModule();
}

SubSys1AppModule的代码:

public class SubSys1AppModule : IAspNetCoreAppModule // It's possible in owin based apps by implementing IOwinAppModule
{
    public virtual void ConfigureDependencies(IServiceProvider serviceProvider, IServiceCollection services, IDependencyManager dependencyManager)
    {
        dependencyManager.Register<Module1Contract, Module1Implementation>();
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.