所以我遇到了一些我不明白的 DI 问题。我看到了一些类似的帖子,我尝试了他们推荐的内容,但我没有任何运气。这是我得到的错误
<块引用>“无法解析 'IRetrieveService' 类型的服务,而 试图激活“更新服务”
这是我如何设置更新服务
private readonly IAsyncPolicy<SaveDocumentsResult> _processDocumentUpdatesPolicy;
private readonly IRetrieveService _retrieveService;
private readonly ISaveService _saveService;
public UpdateService(
IAsyncPolicy<SaveDocumentsResult> processDocumentUpdatesPolicy,
IRetrieveService retrieveService,
ISaveService saveService)
{
_processDocumentUpdatesPolicy = processDocumentUpdatesPolicy ?? throw new ArgumentNullException(nameof(processDocumentUpdatesPolicy));
_retrieveService = retrieveService ?? throw new ArgumentNullException(nameof(retrieveService));
_saveService = saveService ?? throw new ArgumentNullException(nameof(saveService));
}
最后,我在添加服务的地方有了这个
Services.AddScoped<IRetrieveService, RetrieveService>();
Services.AddScoped<ISaveService, SaveService>();
答案 0 :(得分:0)
您的代码中没有任何内容表明有关 IReveverService 和实现的任何问题。我认为您的服务设置肯定有问题。
试试看下面的链接。它描述了不同的用法。
AddTransient, AddScoped and AddSingleton Services Differences