Was sind .NET Platform Extensions auf docs.microsoft.com?


84

In Microsoft Docs gibt es ein Navigationselement auf Framework-Ebene mit dem Namen ".NET Platform Extensions" . Es enthält Dokumente zu kürzlich hinzugefügten APIs wie System.IO.Pipelinesund System.Threading.Channelszum Beispiel sowie eine ganze Reihe anderer APIs, einschließlich der weniger aktuellen.

Einige APIs aus dieser Sammlung sind als Nuget-Pakete verfügbar (sowohl für .Net Core als auch für .Net Framework), andere scheinen jedoch nicht verfügbar zu sein. Außerdem gibt es derzeit kein Nuget-Paket mit dem Namen ".NET Platform Extensions" oder ähnliches.

Die Frage ist also, was genau diese Sammlung von APIs darstellt. Welche Beziehung besteht zu jedem der folgenden Punkte:

  • .Net Framework
  • .Net Core
  • .Net Standard

Was ist mit der Unterstützung im .Net Framework / .Net Core?

Schließlich scheinen einige APIs bereits als separate Nuget-Pakete verfügbar zu sein, andere müssen noch verfügbar gemacht werden. Wie sieht es also in dieser Hinsicht aus?


9
Laut .NET - Einführung des Windows-Kompatibilitätspakets für .NET Core gelten die "Plattformerweiterungen" für APIs, die nicht Teil einer Plattform (Core oder Standard) sind, aber über Nuget verfügbar sind. Sie würden dafür kein einziges umfassendes Nuget-Paket erwarten.
Damien_The_Unbeliever

3
Bedeutet dies, dass ich bei Verwendung des Erweiterungspakets, z. B. der DirectorySearcher-API, die Möglichkeit habe, denselben Code auf einem Linux-Container zu verwenden, während .NET Core 2.2 ausgeführt wird. Danke
Rishabh Jain

Antworten:


61

Es stellt APIs dar, die als NuGet-Pakete ausgeliefert werden, anstatt Teil des gemeinsam genutzten Frameworks für .NET Core zu sein.

Wir sind derzeit nicht in der Lage, die verschiedenen Pakete und die von ihnen unterstützten Ziel-Frameworks auf docs.microsoft.com zu identifizieren, aber es ist etwas, das in unserem Rückstand zu lösen ist. Durch Hinzufügen dieses neuen Ziels konnten wir Dokumente für die neuen APIs hinzufügen.


5
Es ist nicht klar, was wirklich Teil von Platform Extensions ist. Beispielsweise ist die Microsoft.Extensions.Logging.LoggerKlasse (ein Teil von Microsoft.Extensions.Logging.Abstractions.dll) unter .NET Platform Extensions aufgeführt, aber sie ist Teil des gemeinsam genutzten ASP.NET Core 3.1-Frameworks
Ivan

7

Sie können das Windows-Kompatibilitätspaket verwenden, wenn Sie die Windows-Plattform nur als Start des Portierungsprozesses als Ziel festlegen und schrittweise eine plattformunabhängige Alternative von .NET Core oder .NET Standard verwenden möchten.

Weitere Informationen finden Sie unter: https://docs.microsoft.com/en-us/dotnet/core/porting/windows-compat-pack

Das Windows-Kompatibilitätspaket wird über das NuGet-Paket Microsoft.Windows.Compatibility bereitgestellt und kann aus Projekten referenziert werden, die auf .NET Core oder .NET Standard abzielen.

Weitere Informationen finden Sie unter NuGet-Link: https://www.nuget.org/packages/Microsoft.Windows.Compatibility. Sie können ihn verwenden, indem Sie den folgenden Befehl ausführen:

Install-Package Microsoft.Windows.Compatibility -Version 3.1.0
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.