.NET Standard - запутанная концепция. Идея стандартного формата библиотеки .NET звучит великолепно. Но не совсем понятно, что именно. В Visual Studio теперь есть шаблоны проектов .NET Core и .NET Standard Class Library, а также старые проекты PCL. Я также обнаружил, что если вы перейдете к настройкам проекта, вы можете переключить существующую библиотеку PCL на .NET Standard. Не ясно, является ли стандарт .NET библиотекой? Или в формате DLL.
Основной вопрос, который я задаю, - на какую библиотеку мы должны ориентироваться? Я делаю это в основном для проектов Xamarin, но было бы здорово, если бы мы могли делиться этими библиотеками с другими платформами, особенно .NET Core и UWP. Это сбивает с толку то, почему Microsoft выпустила два, казалось бы, идентичных типа библиотек классов одновременно:.NET Core и .NET Standard.
Определения
NET Core - среда выполнения на основе .NET, соответствующая определению API.NET Standard.
PCL - формат библиотеки на основе .NET, поддерживаемый несколькими средами выполнения, включая .NET, Mono, UWP и т.д.
Стандарт .NET (определение 1) - набор стандартных определений API для сред выполнения на основе .NET
Стандарт .NET (определение 2) - формат библиотеки на основе .NET, поддерживаемый несколькими средами выполнения, включая .NET, Mono, UWP и т.д., Который является продолжением формата PCL. В Visual Studio библиотеку PCL можно преобразовать в библиотеку .NET Standard, перейдя в свойства проекта и отредактировав целевую среду.