使用.NET Standard或对新的Xamarin Forms应用程序使用共享库

Ala*_*an2 5 xamarin xamarin.forms

在Xamarin Forms中创建新应用时,我看到以下两个选项:

配置您的表单应用

共享代码:

  • 使用.NET标准
  • 使用共享库

有人可以解释差异吗?我看着帮助,但仍然感到困惑。如果有人可以给我任何建议,我将不胜感激。不确定是否有帮助,但是此应用程序是自包含的,该应用程序中的任何代码都无需与任何其他应用程序共享。

Ger*_*uis 9

就您可以通过两者实现的目标而言,这是相同的。所以,归根结底,这主要是一个品味问题。

最大的区别是共享项目被编译到应用程序本身。它只不过是在罐头上说的:它是一个共享文件夹,您可以在所有平台项目中使用它。使用特定于平台的代码是通过编译器指令完成的。

使用 .NET Standard 项目,您将获得一个物理二进制文件。这是一个自己的项目。您可以在其他 .NET Standard 项目中重用它,尽管您已经提到您不会为此使用它。执行特定于平台的代码需要一些不同的方法,使用 DependencyService。

看到他们选择用 .NET Standard 替换 PCL 但保留共享项目指出共享项目将在这里停留一段时间。我更喜欢 .NET Standard 库。它感觉更干净,并迫使您编写更干净的代码。此外,.NET Standard 不会很快消失,如果您决定应该在未来重用代码,您有能力这样做。

可以在 Microsoft Docs 中找到一个很好的概述以及优点和缺点:https : //docs.microsoft.com/en-us/xamarin/cross-platform/app-fundamentals/code-sharing