Альтернативный вариант ModernHttpClient для Xamarin .Net Standard 2.0 - PullRequest
0 голосов
/ 08 февраля 2019

У меня есть старый проект, который находится в Xamarin.Form v2.5.Это проект PCL, который устарел.Я пытался обновить, но для ModernHttpClient не работает правильно.Это показывает, что DLL не будет работать правильно.

enter image description here

У меня есть следующий код, который основан на 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;
        }
    }
} 

Пожалуйста, предложите

1 Ответ

0 голосов
/ 11 февраля 2019

Может ли кто-нибудь предложить, как это сделать в .Net Standard 2.0, поскольку DLL не добавляется правильно?

Если вы просто устанавливаете ModernHttpClient в IOS / Android / UWP, не будет никаких проблем. Из официального образца , ModernHttpClient используется в родной платформе:

enter image description here

Решение:

Удаление NuGet, установленного в Forms Solution, только что установленного для каждой собственной платформы, тогда это предупреждение исчезнет. Как следует: enter image description here

Щелкните правой кнопкой мыши проект корневого решения -> Управление пакетом NuGet для решения .. -> выберите нужную платформу для установки ModernHttpClient, а не выберите вариант проекта формы

...