¿Qué son las extensiones de plataforma .NET en docs.microsoft.com?

84

Hay un elemento de navegación a nivel de marco en Microsoft Docs llamado "Extensiones de plataforma .NET" . Contiene documentos sobre API agregadas recientemente como System.IO.Pipelinesy, System.Threading.Channelspor ejemplo, así como un montón de otras API, incluidas las no tan recientes.

Algunas API de esta colección están disponibles como paquetes nuget (para .Net Core y .Net Framework), pero otras aparentemente no están disponibles. Además, a partir de ahora, no existe un paquete nuget llamado "Extensiones de plataforma .NET" ni nada similar.

Entonces, la pregunta es ¿qué representa exactamente esta colección de API? ¿Cuál es su relación con cada uno de los siguientes?

  • .NET Framework
  • .Net Core
  • .Net estándar

¿Qué pasa con el soporte en .Net Framework / .Net Core?

Finalmente, algunas API parecen estar ya disponibles como paquetes nuget separados, otras aún no están disponibles, entonces, ¿cuál es la historia al respecto?

Fit Dev
fuente
9
Como dice .NET - Introducing the Windows Compatibility Pack para .NET Core , las "Extensiones de plataforma" son para API que no forman parte de una plataforma (Core o Standard) pero que están disponibles a través de Nuget. No esperaría un solo paquete Nuget completo para esto.
Damien_The_Unbeliever
3
¿Significa esto que si utilizo el paquete de extensión, por ejemplo, DirectorySearcher API, tendré la posibilidad de usar el mismo código en un contenedor de Linux mientras ejecuto .NET core 2.2? Gracias
Rishabh Jain

Respuestas:

61

Representa las API que se envían como paquetes NuGet en lugar de ser parte del marco compartido para .NET Core.

No tenemos la capacidad en este momento para identificar los diferentes paquetes y los marcos de destino que admiten en docs.microsoft.com, pero es algo que tenemos que resolver en nuestro backlog. Entonces, agregar eso como un nuevo objetivo nos permitió agregar documentos para las nuevas API.

Maíra Wenzel - MSFT
fuente
5
No está claro qué es realmente parte de las Extensiones de la plataforma, por ejemplo, la Microsoft.Extensions.Logging.Loggerclase (parte de Microsoft.Extensions.Logging.Abstractions.dll) se enumera en Extensiones de la plataforma .NET, pero es parte del marco compartido ASP.NET Core 3.1
Ivan
7

Puede usar el Paquete de compatibilidad de Windows, si desea apuntar a la plataforma Windows solo como inicio del proceso de migración y usar gradualmente una alternativa independiente de la plataforma de .NET core O .NET Standard.

Consulte para obtener más detalles: https://docs.microsoft.com/en-us/dotnet/core/porting/windows-compat-pack

El paquete de compatibilidad de Windows se proporciona a través del paquete NuGet Microsoft.Windows.Compatibility y se puede hacer referencia a él desde proyectos destinados a .NET Core o .NET Standard.

Consulte el enlace NuGet para obtener más detalles: https://www.nuget.org/packages/Microsoft.Windows.Compatibility y puede usarlo ejecutando el siguiente comando:

Install-Package Microsoft.Windows.Compatibility -Version 3.1.0
Banquero Nikunj
fuente