【问题标题】:ModernHttpClient for .Net Standard 2.0 in Xamarin.FormsXamarin.Forms 中用于 .Net Standard 2.0 的 ModernHttpClient
【发布时间】:2018-06-22 14:26:43
【问题描述】:

我正在尝试从 ManagedNUGet 安装 ModernHttpClient。但安装完成后,它会显示以下警告。我正在尝试安装在便携式项目中。

使用“.NetFramework”恢复包“modernhttpclient 2.4.2”, version=4.6.1' 而不是项目目标框架 '.NetStandard,版本 = v2.0'。此软件包可能不完全兼容 与您的项目

【问题讨论】:

    标签: xamarin.forms httpclient


    【解决方案1】:

    如果您使用的是 .NET Standard,则不必使用 ModernHttpClient。只需转到项目的属性并选择 HttpClientHandler implementation。

    安卓: https://docs.microsoft.com/en-us/xamarin/android/app-fundamentals/http-stack?tabs=macos

    iOS: https://docs.microsoft.com/en-us/xamarin/cross-platform/macios/http-stack

    【讨论】:

    • 请注意,AndroidClientHandler 需要 Android >= 5.0,因此如果您支持低于该版本的版本,您可能仍会使用 ModernHttpClient。
    【解决方案2】:

    您可能正在为您的共享项目使用可移植类库。很长一段时间以来,它是(并且部分仍然是)xamarin(表单)共享代码库的标准类型。

    但是,由于 Microsoft 引入了 .Net 标准,因此鼓励开发人员创建 .net 标准类库,而不是使用旧的 PCL 方法。 因此,许多 nuget 包得到了更新,使其与 .net 标准兼容,但是对可移植类库的支持却被放弃了。

    如果你想使用特定的 nuget 包,基本上你必须将你的 pcl 转换为 .net 标准类库。

    【讨论】:

    • 嗨,马库斯,感谢您的回复。我通常从 NUGet 安装软件包。所以,我只是进入我项目的可共享库(可移植类库)的管理 NUGet 并尝试在其中安装。有没有其他方法可以安装ModernHttpClient?以及如何将 PCL 库 ModernHttpClient 转换为支持的 .NetStandard?
    • 查看此链接:montemagno.com/… 转换 PCL 后,您应该可以安装 nuget 包了。
    • 我忘了提到我正在开发新项目,即 .NetStandard(不将 PCL 转换为 .NetStandard)。我应该为 .NetStandard 2.0 中的ModernHttpClient 使用哪个 NUGet?如果我理解错误,请解释我。我是 .NetStandard 2.0 的新手
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-18
    • 1970-01-01
    • 1970-01-01
    • 2018-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多