我正在尝试在我的.NET 项目(应用程序层)中进行依赖项注入。我有两个用于接口和类的基本文件。所以我把它放在我的program.cs中:
但是我遇到了 2 个错误
InvalidOperationException:验证服务描述符“ServiceType:SisPenalidades.Application.Interfaces.IAppAnexo 生命周期时出错:作用域实现类型:SisPenalidades.Application.Services.AppAnexo”:无法解析类型“SisPenalidades.Application.Interfaces.Base.IApp”的服务1[SisPenalidades.Domain.Entities.Anexo]',同时尝试激活“SisPenalidades.Application.Services.AppAnexo”。
和
InvalidOperationException:尝试激活“SisPenalidades.Application.Services.AppAnexo”时,无法解析类型“SisPenalidades.Application.Interfaces.Base.IApp`1[SisPenalidades.Domain.Entities.Anexo]”的服务。
我做错了什么?我在存储库层上做了同样的事情并且它有效,但它在应用程序层上不起作用。
项目结构:
观察。如果我删除 App.cs 基类并将它们的方法直接放在 AppAnexo.cs 类上,它就可以工作
我怀疑您的
AppAnexo
类对 IApp
有构造函数依赖,并且您忘记了包含从 IApp
到 App
的依赖注入映射
尝试在您的 Program.cs 中添加以下内容
builder.Services.AddScoped<IApp, App>();
我发现使用 DI 的泛型语法更清晰,如上所述,但如果您愿意,也可以使用
typeof
。