代码之家  ›  专栏  ›  技术社区  ›  Luca Lindholm

我可以使用哪些名称空间来编写与所有实现兼容的xamarin包?

  •  -2
  • Luca Lindholm  · 技术社区  · 6 年前

    我想创建一些nuget包,其中包含与所有Xamarin实现(UWP、iOS、Android)兼容的API,以便在所有可以运行Xamarin应用程序的设备上使用它。

    我听说 System.* 名称空间是与所有名称空间兼容的名称空间,但是还有其他通用的名称空间吗?我认为 Windows.* 命名空间是唯一与UWP兼容的,对吗?

    我想对这个话题有一个详细的解释。

    2 回复  |  直到 6 年前
        1
  •  2
  •   TheGeneral    6 年前

    不过,所有.net标准功能在某种程度上都是交叉兼容的

    .NET implementation support

    .NET标准是.NET API的正式规范,这些API是 在.NET标准的背后,是在 .NET生态系统。ECMA335继续为.NET建立统一性 实现行为,但没有类似的.NET基本规范 用于.NET库实现的类库(BCL)。

    enter image description here

    额外资源

    API list in markdown

    你也可以看看这个

    .NET API analyzer

    The .NET Portability Analyzer

    enter image description here

        2
  •  1
  •   Andy    6 年前

    通常是的,系统名称空间应该可以跨平台使用;它们是.Net的一部分。Windows将是特定于平台的。

    不过,我不太担心名称空间,而是创建了一个以netstandard2.0为目标的类库。如果您需要访问其他库功能,请使用Nuget拉入所需的包。只需确保只拉取针对NetStandard本身的包,就可以了,因为NetStandard的目标是定义.Net的所有实现必须跨平台提供什么。

    https://docs.microsoft.com/en-us/dotnet/standard/net-standard