项目场景:
新建了一个控制台项目,引用了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);
}
项目启动时出现Castle.MicroKernel.ComponentNotFoundException异常,原因是System.IServiceProvider服务未注册。解决方案是在ProjectModule的Initialize方法中通过注册服务集合并使用WindsorRegistrationHelper创建服务提供者来解决此问题。
18万+

被折叠的 条评论
为什么被折叠?



