关于Cannot resolve scoped service from root provider解决方案.md
关于Cannot resolve scoped service from root provider解决方案
在静态类或ServiceProvider
来至于静态属性或类已AddSingleton
的方式添加进IServiceCollection
,此时调用service.GetService<ICoreRepository>()
,则会出现Cannot resolve scoped service from root provider
异常
解决方法:在调用时如下使用
using (var serviceCope = service.CreateScope())
{
_sysPermissions = serviceCope.ServiceProvider.GetService<ICoreRepository>().SysPermissions.ToList();
}