Что такое переносимая библиотека классов?
На MSDN я заметил раздел о Portable Class Library
в разделе Информация о версии.
Увидеть System.Object
для примера. http://msdn.microsoft.com/en-us/library/system.object.aspx
Я сделал краткий поиск в Google и не смог найти ничего о Portable Class Library
, Кто-нибудь здесь знает, что это такое или где я могу найти больше информации об этом?
4 ответа
ОБНОВЛЕНИЕ 9 октября 2017: Сравнение статей / ограничение.NET Core/Std/PCL ОБНОВЛЕНИЕ 23 ноября 2016: Статья Рика Штраля
ОБНОВЛЕНИЕ 29 октября 2016: FAQ по.NETStandard 1-> 2 ОБНОВЛЕНИЕ 19 октября 2016: Это лучшее интервью / видео, которое я когда-либо видел, посвященное.NET Standard 2.0
ОБНОВЛЕНИЕ 27 сентября 2016: в объявлении .NET Standard 2.0 есть больше полезной информации
ОБНОВЛЕНИЕ 6 июня 2016: Эта статья хорошо объясняет, как механизм библиотеки.NETStandard заменяет большую часть PCL
ОБНОВЛЕНИЕ 10 июля 2013: Отличное состояние поста сводного блога PCL от @shanselman с множеством конкретных примеров, скриншотов и ссылок. Размещает любой другой ответ здесь, в тени.
ОБНОВЛЕНИЕ 20 мая 2013 г.:
- Очень практическое освещение практического применения и последствий этого для кросс-устройств (например, Xamarin Studio) в подкасте Tablet Show с Этли Хантер. Основные выводы:- PCL - очень полезное ограничение, накладываемое на себя в сценариях с несколькими устройствами.
- Одна из упомянутых библиотек - это превосходный MvvmCross, о котором рассказывается в отдельном эпизоде Tablet Show Episode 71 с его автором Stuart. Для использования PCL для таких целей необходима только небольшая настройка, описанная здесь Стюартом, для настройки среды.
ОБНОВЛЕНИЕ 19 апреля 2013 г.: Отличная плотная сводка того, как все это связано от Intellisense до времени выполнения в блоге Саймона Купера
Видео: канал 9, выпуск Visual Studio Toolbox, эпизод 14 июня 2012 г.
Видео: Channel 9 Going Deep Show, серия 27 сентября 2011 г.
ОБНОВЛЕНИЕ 11 сентября 2012: Хорошее высокоуровневое сообщение в блоге с картинками, диаграммами и примерами мотивации, показывающими, как MVVM Light и RX используют его
ОБНОВЛЕНИЕ 11 апреля 2012: Скотт Хансельман (Scott Hanselman), очень хороший конец в конец, очень быстро говорит об этом, включая скриншоты (также содержит очень проницательную информацию "как думать об этом" и ссылки на образцы). Также включает в себя раздел ресурсов в конце, который в значительной степени дублирует весь этот пост:D
ОБНОВЛЕНИЕ 9 июля 2012: Эта серия блогов Мирчи Трофин из команды разработчиков (пока что только одна часть) является наиболее полным освещением, включая снимки экрана и подробные матрицы, показывающие доступные функции для всех выбранных вами вариантов, если вы любите подобные вещи.
Смотрите сообщение в блоге, посвященное Portable Library Tools, которое начинается:-
Портативные инструменты библиотеки CTP добавляет новый шаблон проекта "Портативная библиотека классов" в Visual Studio, который можно использовать для создания библиотек классов в C# и VB, которые работают на различных платформах.NET без перекомпиляции.
Он используется для создания библиотеки классов, предназначенной для нескольких платформ (особенно в версиях Silverlight, таких как WP7 и SL4, но включая XNA на Xbox) одновременно.
Смотрите также эту сводную статью InfoQ
Смотрите также это уведомление о выпуске.
Подробные сведения см. В Руководстве по многоцелевому таргетингу для инструментов для управляемого кода.
Проект Portable Class Library позволяет создавать и создавать управляемые сборки, которые работают на нескольких платформах.NET Framework. Вы можете создавать классы, которые содержат код, который вы хотите совместно использовать во многих проектах, например разделяемую бизнес-логику, а затем ссылаться на эти классы из разных типов проектов.
Portable Library Tools - это новая надстройка Visual Studio от Microsoft, которая позволяет создавать библиотеки C# и Visual Basic, которые работают на различных платформах.NET без перекомпиляции.
Теперь у MSDN есть хорошая статья / документация. Вы можете проверить это и посмотреть, что поддерживается в Portable Class Library
,
Следующие сборки доступны в проекте Portable Class Library:
- mscorlib.dll
- System.dll
- System.Core.dll
- system.Xml.dll
- System.ComponentModel.Composition.dll
- System.Net.dll
- System.Runtime.Serialization.dll
- System.ServiceModel.dll
- System.Xml.Serialization.dll
- System.Windows.dll (от Silverlight)
Вы можете узнать, какие члены поддерживаются проектом Portable Class Library, в справочных разделах библиотеки классов.NET Framework. В таблице участников для класса рядом с поддерживаемыми членами появляется следующий значок Portable Class Library.
(Значок для Portable Class Library, который вы увидите в Документах MSDN.)
Для создания проекта библиотеки переносимых классов вам необходимо:
1 Visual Studio 2010 с пакетом обновления 1 (SP1) (установщик 795 КБ, ISO 1,48 ГБ)
2 Портативные библиотечные инструменты CTP (1,38 МБ)
После установки вышеуказанных обновлений вы получите новый шаблон проекта для Portable Class Library:
(Выше содержание взято из MSDN)
ОБНОВЛЕНИЕ 2014:
Портативная библиотека классов является частью Visual Studio 2014.
Это библиотека классов, которая может работать на разных платформах.
Документы мне показались немного сложными для понимания, поэтому я постарался прояснить ситуацию здесь.
Портативная библиотека классов создана, чтобы позволить программистам создавать проекты, которые будут работать на нескольких платформах, таких как Xbox 360, Windows Phone, Silverlight и.NET Framework (4 и выше). это делается путем пропуска некоторых конкретных API, которые не поддерживаются выбранными вами целевыми платформами, что приведет к потере некоторых доступных функций.Net Framework.
Таким образом, мы можем сказать, выбирая между Portable class library
и нормальный class library
зависит от целевых платформ вашего проекта. если вы хотите, чтобы ваше приложение работало на Xbox и настольных компьютерах с операционной системой Windows, вам лучше сэкономить свое время и использовать PCL, в отличии от этой библиотеки классов Normal.
Для получения дополнительной информации посетите страницу документации.
Теперь существует новая технология с открытым исходным кодом.Net Standard, которая вытеснит PCL. .NET Standard решает проблему совместного использования кода для разработчиков.NET на всех платформах, предоставляя все API, которые вы ожидаете и любите, в нужных вам средах: настольных приложениях, мобильных приложениях и играх и облачных сервисах:
- .NET Standard - это набор API, которые должны быть реализованы на всех платформах.NET. Это объединяет платформы.NET и предотвращает дальнейшую фрагментацию.
- .NET Standard 2.0 будет реализован.NET Framework, .NET Core и Xamarin. Для.NET Core это добавит многие существующие API, которые были запрошены.
- .NET Standard 2.0 включает в себя оболочку совместимости для двоичных файлов.NET Framework, что значительно расширяет набор библиотек, на которые можно ссылаться из своих библиотек.NET Standard.
- .NET Standard заменит Portable Class Libraries (PCL) в качестве инструмента для создания многоплатформенных библиотек.NET.
Вы можете увидеть определение.NET Standard API в репозитории dotnet/standard на GitHub.