c#无法解析XXX类型 xxx服务
无法解析XXX类型 xxx服务
结果图
报错提示
System.AggregateException
HResult=0x80131500
消息=某些服务无法构造(验证服务描述符“服务类型:Server.WebApi.Service.EMPInfoService Lifetime:作用域实现类型:Server.WebApi.Service.EMPInfoService”时出错:尝试激活“Server.WebApi.Service.EMPInfoService”时无法解析类型“Server.WebApi.DbContext”的服务。
内部异常 1:
InvalidOperationException:验证服务描述符“ServiceType: Server.WebApi.Service.EMPInfoService Lifetime: Scoped ImplementationType: Server.WebApi.Service.EMPInfoService”时出错:尝试激活“Server.WebApi.Service.EMPInfoService”时无法解析类型“Server.WebApi.DbContext”的服务。
报错原因
未在statrtup文件中添加服务注入,我当时加了一个service的服务注入,因为controller中需要service的注入,而忽视了service中也引用了Dbcontext注入,所以会报错
解决办法
在startup中添加注入,凡是在service\controller层中用到的构造容器注入的都需要在服务中添加服务注入(依赖注入),否则就会报这种错误。因为程序无法去自动给你加这个类
//服务注入
builder.Services.AddScoped<EMPInfoService>();
builder.Services.AddScoped<DbContext>();