项目场景:
新建了一个控制台项目,引用了ABP的EntityFrameworkCore和Core两个项目
问题描述
控制台启动时报错:
Castle.MicroKernel.ComponentNotFoundException:“No component for supporting the service System.IServiceProvider was found”
原因分析:
大概是因为服务System.IServiceProvider还没有注册就被使用了
解决方案:
在ProjectModule中注册服务
public override void Initialize()
{
IocManager.RegisterAssemblyByConvention(typeof(BackgroundServiceModule).GetAssembly());
//注册服务
var services = new ServiceCollection();
IdentityRegistrar.Register(services);
WindsorRegistrationHelper.CreateServiceProvider(iocManager.IocContainer, services);
}