Я хочу знать разницу между PCL (Portable Class Library) и обычной библиотекой.Portable Class Library vs. library project
PCL использует профили, с помощью которых можно определить, какие платформы и функции доступны. Оба могут генерировать DLL, которые могут использоваться на разных платформах. Для обычного проекта библиотеки вы также можете установить целевую структуру (например, .NET 3.5). Xamarin говорит, что директивы компилятора #if
подходят только для общих проектов, что означает, что они не используются в PCL. Я думаю, что PCL и проект библиотеки очень похожи.
Итак, каковы различия при работе с различными мобильными платформами?
библиотеки классов только целевой версии .NET. PCL нацелены на несколько платформ, поэтому они еще более ограничивают. Он использует наименьший общий знаменатель, доступный во всех целевых платформах. Общие проекты - это, в основном, ссылки на файлы обратно к проекту. Если вы идете с PCL, профили 78 или 259 хороши для таргетинга на большинство платформ. – valdetero
Значит, разница в том, что библиотеки классов предназначены только для целевой среды .NET и специфических функций PCL в зависимости от операционной системы и платформы .NET? Можете ли вы легко преобразовать один тип проекта в другой? – testing
@testing Я не нашел простой способ конвертировать проект из одного в другой. PCL - идеальный способ совместного использования кода между несколькими приложениями Xamarin. Однако, если у вас есть зависимости, которые не являются также PCL, ваш PCL не может ссылаться на них. Это может помочь общий проект. Он может ссылаться на эти зависимости, отличные от PCL. – elevine