【问题标题】:IServiceCollection does not contain a defintion for AddHttpClientIServiceCollection 不包含 AddHttpClient 的定义
【发布时间】:2018-08-30 07:36:04
【问题描述】:

我正在尝试在我的 .net core 2.0 项目中使用 HttpClient,为此我在控制器中注入了 HttpClient。但是当我尝试在我的 startup.cs 中配置 httpclient 时,我收到了这个错误:“IServiceCollection 不包含 AddHttpClient 的定义”。我已经引用了using Microsoft.AspNetCore.Http;using Microsoft.Extensions.DependencyInjection;,这就是我想要做的:

services.AddHttpClient<TestController>();

它在具有相同命名空间的其他项目中运行良好,但在这里我得到了错误。有什么帮助吗?

【问题讨论】:

    标签: c# .net httpclient asp.net-core-2.0


    【解决方案1】:

    你需要从NuGet安装Microsoft.Extensions.Http

    【讨论】:

    • 确保为您的目标框架安装正确的版本。例如如果您的目标是 .net core 3.1,那么您需要安装此软件包的 3.1.x 版本。否则,您可能会收到类似System.Private.CoreLib: Could not load file or assembly 'Microsoft.Extensions.Logging.Abstractions, Version=X.X.X.X 的错误
    • @mfa 这个评论救了我,谢谢
    • 我通过安装 Microsoft.Extensions.Http.Polly 解决了这个问题
    【解决方案2】:

    啊,我找到了解决方案。我认为services.AddHttpClient 与.net core 2.1 一起工作。所以我将我的 .net 核心版本更新为 2.1,并将微软软件包更新为 2.1,它开始工作了。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-09
    • 2022-01-03
    • 2020-04-02
    • 1970-01-01
    • 2019-04-14
    • 2016-09-25
    • 2020-08-20
    • 1970-01-01
    相关资源
    最近更新 更多