首页 > 解决方案 > Xamarin .Net Standard 2.0 的 ModernHttpClient 替代选项

问题描述

我有旧项目,它位于 Xamarin.Form v2.5 中。这是已弃用的 PCL 项目。我试图升级但ModernHttpClient无法正常工作。它表明 DLL 将无法正常工作。

在此处输入图像描述

我有以下基于ModernHttpClient. 任何人都可以建议如何在 .Net Standard 2.0 中处理这个问题,因为 DLL 没有正确添加?

internal class AuthenticatedHttpClientHandler : NativeMessageHandler
{
    public AuthenticatedHttpClientHandler()
    {
        CookieContainer = new CookieContainer();
    }

    protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request,
        CancellationToken cancellationToken)
    {
        using (var cts = new CancellationTokenSource(System.TimeSpan.FromSeconds(30)))
        {
            var response = await base.SendAsync(request, cts.Token).ConfigureAwait(false);
            return response;
        }
    }
} 

请建议

标签: xamarin.forms.net-standard-2.0

解决方案


任何人都可以建议如何在 .Net Standard 2.0 中处理这个问题,因为 DLL 没有正确添加?

如果你只是安装ModernHttpClient到IOS/Android/UWP,没有问题。来自官方示例ModernHttpClient用于原生平台:

在此处输入图像描述

解决方案:

删除Forms解决方案中安装的NuGet,为每个原生平台安装,然后此警告将消失。如下: 在此处输入图像描述

右键单击根解决方案项目 -> 管理解决方案的 NuGet 包.. -> 选择所需的本机平台来安装 ModernHttpClient,而不是选择表单项目选项


推荐阅读