Xamarin.Forms 和 .Net Standard 2.0

Gae*_*oci 4 .net xamarin xamarin.forms

我正在为我自己的应用程序启动一个新的 Xamarin.Forms 项目,我必须使用这个插件:Bluetoothle,仅与.NET Standard 2.0兼容,我已经设置了我的项目并且一切正常。

我的问题是:建议现在将 .NET Standard 2.0 与 Xamarin.Forms 一起使用吗?

我担心在我的应用程序开发过程中出现不兼容。例如,我尝试安装Xamarin.Forms.GoogleMaps并比较警告:

包“Xamarin.Forms.GoogleMaps 2.3.0”是使用“.NETFramework,Version=v4.6.1”而不是项目目标框架“.NETStandard,Version=v2.0”恢复的。此包可能与您的项目不完全兼容。

所以我想问你是否有人已经将 .NET Standard 2.0 与 Xamarin 一起使用,并且你是否有一些问题。

Mar*_*und 5

不,您可以非常安全地将 .NET Standard 与 Xamarin.Forms 结合使用。大多数显示您提到的警告的包以前都针对可移植类库,它的 API 表面肯定比 .NET Standard 低。

在大多数情况下,只要库不调用某些在 .NET Standard 中不可用或未实现的 API,一切都会按预期工作。然而,这主要发生在一些以前针对完整 .NET Framework 的库使用一些 Windows 特定的 API 时。

最好的建议是尽可能多地测试应用程序和所有“角落”案例,但是在使用受支持的 PCL 库时应该是安全的。

  • 请注意 [.NET Standard 是 PCL 的替代品](https://docs.microsoft.com/en-us/dotnet/standard/net-standard#comparison-to-portable-class-libraries)。如果 PCL 直接在您的控制之下,您应该认真考虑将它们升级到 .NET Standard,这将减少这些不兼容的可能性。 (3认同)