System.InvalidOperationException 无法解析类型的服务

问题描述 投票:0回答:1

System.InvalidOperationException:尝试激活“HungerZone.Services.ProductAPI.Controllers.ProductAPIController”时无法解析类型“HungerZone.Services.ProductAPI.Models.DTO.ResponseDto”的服务。 在 Microsoft.Extensions.DependencyInjection.ActivatorUtilities.GetService(IServiceProvider sp,类型 type,类型 requiredBy,布尔 isDefaultParameterRequired) 在 lambda_method3(闭包,IServiceProvider,对象[])

我收到此错误

asp.net-web-api automapper
1个回答
0
投票

要解决此问题,您应该在 Startup.cs 文件的 ConfigureServices 方法中将 ResponseDto 注册为服务。您可以根据您的具体用例使用 AddScoped 或 AddSingleton 方法。

强文字 services.AddScoped();

// Register AutoMapper and add your mapping profile(s)
services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());
enter code here
By adding services.AddScoped<ResponseDto>() in the ConfigureServices method, you make sure that an instance of ResponseDto is available for dependency injection when needed.

进行此更改后,ProductAPIController 应该能够在激活期间解析 ResponseDto 依赖项。

请注意,如果 ResponseDto 有自己的依赖项,您应该确保也在依赖项注入容器中注册这些依赖项。否则,您可能会遇到依赖于它的其他类的类似问题。

© www.soinside.com 2019 - 2024. All rights reserved.