Подтвердить что ты не робот

Вызов библиотеки универсального класса Windows 10 из настольного приложения

В предыдущей разработке я использовал портативную библиотеку классов для совместного использования кода между приложением Windows "Metro" Windows и настольным приложением .NET/WPF.

Являются ли библиотеки классов Windows 10 Universal также пригодными для использования в таких приложениях для настольных компьютеров, а если нет, то каков рекомендуемый способ совместного использования кода в этом сценарии?

4b9b3361

Ответ 1

Сначала рассмотрим первую часть вашего вопроса:

Являются ли библиотеки классов Windows 10 Universal пригодными для использования с такого рабочего стола приложения?

Чтобы ответить на это, я создал новое решение в VS2015 со следующими проектами:

  • Настольное приложение WPF с именем wpfApp
  • Приложение UWP Win10 с именем win10App
  • Библиотека классов UWP Win10 с именем win10Lib

Затем я смог добавить библиотеку классов в качестве ссылки на приложение UWP. Но у меня появилось сообщение об ошибке при попытке добавить ссылку на библиотеку к настольному приложению.

введите описание изображения здесь

(SCREENSHOT: Err msg при попытке добавить UWP lib как ссылку на настольное приложение)

Далее, вторая часть вашего вопроса:

и если нет, то какой рекомендуемый способ совместного использования кода в этом сценарий?

Итак, я добавил новый проект библиотеки классов, но не Universal... Я выбрал параметр Portable Class Library в классических настольных приложениях. Это позволило мне выбрать платформу, которую я хочу поддерживать, включая .NET 4.6 и Windows Universal 10.0.

введите описание изображения здесь

(SCREENSHOT: Добавить портативную библиотеку классов)

Итак, теперь у меня есть новый проект библиотеки классов в моем решении:

  • классическая настольная библиотека классов (переносная) с именем portableLib

Я снова начал добавлять ссылку на библиотеку классов для своего рабочего стола WPF, выбрав мой новый проект portableLib. Однако я получил следующее сообщение об ошибке:

введите описание изображения здесь

(SCREENSHOT: сообщение об ошибке при добавлении переносимой библиотеки классов в проект WPF)

Это произошло потому, что я выбрал 4.6 (по умолчанию для версии .NET Framework) как одну из платформ при создании библиотеки классов, но мой проект WPF по-прежнему нацелился на более раннюю версию .NET Framework. Я исправил это, отредактировав свойства проекта приложения WPF и обновил цель в соответствии с версией среды библиотеки классов.

Наконец, я добавил ссылку на новую переносимую библиотеку классов на мое приложение UWP для Win10, и оно было успешно добавлено. Теперь я могу построить решение без ошибок.

Вот скриншот моей структуры проекта со ссылками. введите описание изображения здесь

Надеюсь, это поможет!