Таким образом, проблема, вероятно, вызвана тем, что Магазин Windows не перекомпилирует пакет AppX с .NET Native.
Если вы создаете приложение UWP локально, в пределах ...
- В режиме отладки вы получите комплект AppX со сборками .NET и ссылку на .NET Core CLR (который работает)
- В режиме выпуска вы получите пакет AppX с нативно скомпилированным приложением и ссылку на среду выполнения .NET Native (которая также работает)
При создании пакета приложения для отправки в Магазин Windows вы получите пакет AppX со сборками .NET и ссылку на собственную версию .NET, которая должна использоваться Магазином Windows для повторной компиляции приложения ( определяется версией используемого вами пакета Microsoft.NETCore.UniversalWindowsPlatform
nuget.
Для приложений с включенной возможностью runFullTrust
Store не перекомпилирует приложение. Поэтому вы будете распространять пакет AppX, который содержит сборки .NET и использует среду выполнения .NET Native (которая на самом деле работает замечательно хорошо). Как только CLR попытается загрузить сборку реализации .NET Core, вы получите ошибку, упомянутую выше. Кроме того, ваше приложение будет работать намного медленнее, чем скомпилированное в .NET.
I думаю для обычного пакета AppX с включенным runFullTrust
, Store не может решить, перекомпилировать ли приложение, так как такой пакет может содержать другие типы приложений (например, Windows Forms или WPF) .
Чтобы устранить эту проблему, создайте «Проект упаковки приложений Windows» и добавьте приложение UWP в качестве справочного материала. Отправьте пакет AppX, сгенерированный из этого проекта, в магазин. После этого Windows Store выполнит повторную компиляцию сборок .NET, как и ожидалось.
Подробнее см. Не удалось загрузить файл или сборку 'System.Private.CoreLib ...' .