Можно ли создать UWP с .NET Core?

Поскольку я знаю, что .net-core может запускать UWP, можем ли мы создать или написать UWP с помощью Core? Я прочитал https://msdn.microsoft.com/en-us/magazine/mt694084.aspx


person TeeTracker    schedule 04.07.2016    source источник
comment
Похоже, вы сможете запустить UWP на .net core 3.0   -  person ghord    schedule 15.05.2018
comment
@ghord, это небольшая формальность. Вы можете запустить UWP на .NET Core уже сегодня. Если я правильно понимаю, UWP совместим с .NET Standard 2.0, который использует эталонные сборки во время проектирования и разработки. Когда он фактически собирается и запускается, он теперь использует свои сборки среды выполнения и извлекает эти сборки из .NET Core, а не из .NET Framework. UWP НЕ работает в среде выполнения приложения .NET Core, как это делает консоль .NET, если это имеет смысл. Я сомневаюсь, что это так. Это очень запутанно. ;)   -  person Mike-E    schedule 15.05.2018
comment
@Mike-EEE Насколько я понимаю, в сборке 2018 они анонсировали пакеты для настольных ПК, которые позволят вам запускать WPF/WinForms/UWP на .Net Core 3.0.   -  person ghord    schedule 16.05.2018
comment
Правильно @ghord есть поддержка .NET Core. Отличие заключается в том, что эти пакеты позволяют запускать эти продукты в сборках среды выполнения .NET Core 3.0, а не в среде выполнения приложений .NET Core 3.0. То есть вы не сможете запускать WPF/WinForms/UWP на Linux или Mac, что стало возможным благодаря среде выполнения приложения, о которой я здесь говорю. Однако вы получите все преимущества производительности и дополнительные API/инструменты .NET Core 3.0 в Windows. Это опять же, если я все правильно понял.   -  person Mike-E    schedule 16.05.2018
comment
@ghord В сообщении в блоге, на которое я ссылался, Скотт Хансельман ясно говорит, что вы можете запускать WinForms и WPF на .NET Core 3 в Windows. Для меня причина, по которой он не будет работать на Mac/linux, заключается в том, что там просто нет API для PInvoke (который должен работать как для winforms, так и для WPF).   -  person ghord    schedule 16.05.2018
comment
Скотт ясно говорит, что @ghord, но означает ли это .NET Core через сборки среды выполнения, такие как текущий .NET Core UWP, или означает ли это, что вы сможете использовать netcoreapp3.0 TFM в проекте приложения .NET Core и использовать WPF/WinForms /UWP есть? Я предполагаю, что именно в этом и заключается путаница, и нам нужно посмотреть, как устроен SDK, чтобы знать наверняка. Например, вот приложение .NET Core UWP, и нет упоминания о TargetFramework или netcoreapp2.x TFM.   -  person Mike-E    schedule 16.05.2018


Ответы (1)


Приложения UWP смогут использовать библиотеки, созданные вами в .net core, если вы используете прозвище платформы .netstandard1.6 (или более поздней версии).

UWP предназначен только для экосистемы Windows.

см. статья.

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

person Nick Acosta    schedule 04.07.2016
comment
Означает ли это, что с помощью Core мы не можем создать какое-либо другое UI-приложение, верно? - person TeeTracker; 05.07.2016
comment
Да, вы не можете создать пользовательский интерфейс для приложения UWP с ядром .net. - person Nick Acosta; 05.07.2016
comment
Извините, но это так запутанно; .NET Core является кроссплатформенным, а UWP — только для Win10. Как это может быть? Разве это не противоречиво? Я имею в виду, если он может работать на .NET Core, разве это не означает, что он кроссплатформенный? - person Pap; 08.03.2017
comment
Пап: Вы можете использовать .net core для создания приложения, ориентированного на UWP, но UWP не является частью .net, это часть Windows. Это похоже на то, как вы можете использовать стандартные C или C++ (кроссплатформенные языки и стандартные библиотеки) для создания приложения для конкретной платформы, предназначенного для Windows, Mac или Linux или ... Язык, среда выполнения, библиотеки классов являются кроссплатформенными, но вы используете их для общения с API-интерфейсами ОС, которые не являются таковыми. - person Max Strini; 09.03.2017
comment
@MaxStrini Можно ли ориентироваться на UWP с помощью dotnet cli? Если это не так, стоит ли ожидать, что Microsoft внедрит его в будущем? Я не стремлюсь к кроссплатформенности, js. - person Fᴀʀʜᴀɴ Aɴᴀᴍ; 26.02.2018
comment
Я уже не уверен, что это точно? Похоже, UWP совместим с .NET Standard 2.0, а не с .NET Core. Точнее, .NET Core создан для совместимости с .NET Standard 2.0, и UWP использует эти справочные библиотеки при сборке. В любом случае, это действительно сбивает с толку. :П - person Mike-E; 15.05.2018
comment
Спасибо, Mike-EEE, я обновил свой ответ, чтобы прочитать стандарт .net 1.6 (или выше). - person Nick Acosta; 15.05.2018
comment
Но платформа UNO — это базовая технология .NET, которую можно запустить на любой платформе. - person Christian Findlay; 24.11.2018
comment
@Mike-EEE прав. Это утверждение не имеет смысла: приложения UWP смогут использовать библиотеки, созданные вами в ядре .net, если вы ориентируетесь на .netstandard... Если вы создаете библиотеки, ориентированные на стандарт .net, эти библиотеки не являются ядром .net. библиотеки. Их можно использовать с ядром .net или любой другой средой выполнения, поддерживающей стандарт .net. - person Charles Roddie; 08.12.2018