Что такое расширения платформы .NET на docs.microsoft.com?

91

В Microsoft Docs есть элемент навигации уровня платформы под названием «.NET Platform Extensions» . Он содержит документацию по недавно добавленным API, например, System.IO.Pipelinesи System.Threading.Channels, а также по целому ряду других API, включая не самые последние.

Некоторые API из этой коллекции доступны в виде пакетов nuget (как для .Net Core, так и для .Net Framework), но другие, по-видимому, недоступны. Кроме того, на данный момент нет пакета nuget под названием «.NET Platform Extensions» или чего-либо подобного.

Итак, вопрос в том, что именно представляет собой эта коллекция API? Каково его отношение к каждому из следующего:

  • .NET Framework
  • .Net Core
  • .Net Стандарт

А как насчет поддержки в .Net Framework / .Net Core?

Наконец, некоторые API-интерфейсы, похоже, уже доступны в виде отдельных пакетов nuget, другие еще не доступны, так какова история в этом отношении?

Fit Dev
источник
10
Как говорится в .NET - Представлении пакета совместимости Windows для .NET Core , «Расширения платформы» предназначены для API, которые не являются частью платформы (Core или Standard), но доступны через Nuget. Вы не ожидали бы для этого единого всеобъемлющего пакета Nuget.
Damien_The_Unbeliever 01
3
Означает ли это, что если я использую пакет расширений, например DirectorySearcher API, у меня будет возможность использовать тот же код в контейнере Linux при запуске ядра .NET 2.2. Спасибо
Ришаб Джайн

Ответы:

65

Он представляет API-интерфейсы, которые поставляются в виде пакетов NuGet, а не являются частью общей платформы для .NET Core.

В настоящее время у нас нет возможности определить различные пакеты и целевые платформы, которые они поддерживают на docs.microsoft.com, но это то, что нам предстоит решить. Таким образом, добавление этого в качестве новой цели позволило нам добавить документы для новых API.

Майра Венцель - MSFT
источник
7
Неясно, что на самом деле является частью расширений платформы, например, Microsoft.Extensions.Logging.Loggerкласс (часть Microsoft.Extensions.Logging.Abstractions.dll) указан в разделе «Расширения платформы .NET», но он является частью общей платформы ASP.NET Core 3.1
Иван,
7

Вы можете использовать Windows Compatibility Pack, если хотите настроить таргетинг на платформу Windows только в качестве начала процесса переноса и постепенно использовать платформенно-независимую альтернативу от .NET core ИЛИ .NET Standard.

Для получения более подробной информации см. Https://docs.microsoft.com/en-us/dotnet/core/porting/windows-compat-pack

Пакет совместимости Windows предоставляется через NuGet Package Microsoft.Windows.Compatibility, и на него можно ссылаться из проектов, ориентированных на .NET Core или .NET Standard.

Пожалуйста, обратитесь к ссылке NuGet для получения более подробной информации: https://www.nuget.org/packages/Microsoft.Windows.Compatibility, и вы можете использовать ее, выполнив команду ниже:

Install-Package Microsoft.Windows.Compatibility -Version 3.1.0
Никундж Банкир
источник