.NET Standard 在 PCL Xamarin.Forms.Core 项目上

.NET Standard over PCL Xamarin.Forms.Core project

我读到 .NET Standard 现在优于 PCL class 库来共享代码。

我的问题是我应该使用 .NET Standard 库而不是 PCL 作为 Xamarin Forms 解决方案的核心吗?目前,它将以 iOS 和 Android 为目标,但我们期待未来将 Tizen 用于电视。

.NET Standard 将是未来,所以如果可以,您应该现在就加入。

但请注意。如果您计划使用 NuGet 包,您可能 运行 遇到包(或来自其他来源的库)尚不支持 .NET Standard 的情况。或者反过来也是如此。截至目前,有些库 支持 .NET Standard,因此您应该安装旧版本(具有随之而来的所有风险)或寻找替代路径。

另请注意; .NET Standard(和 Core 就此而言)领域现在发生了很多事情,所以要为错误、粗糙的工具和尚未支持的所有平台做好准备。

您还可以通过使用 .Net 标准和 PackagetargetFallback 属性来选择两全其美,以便与官方不兼容的库兼容:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
    <PackageTargetFallback>portable-net45+win8+wpa81+wp8</PackageTargetFallback>
  <PropertyGroup>
<!...>