MSIX: Как добиться автоматической установки .net 5, необходимого для моего приложения?

Я написал программу WPF с использованием .NET 5, упаковал ее в пакет MSIX (Release, x86 и x64) как пакет, зависящий от платформы. Кажется, все в порядке, но есть одна очень неприятная вещь: при первом запуске приложение сообщает, что отсутствует среда выполнения .NET, хотите ли вы ее установить? ». Если вы нажмете «Да», откроется страница загрузки, на которой пользователь должен выбрать необходимую среду выполнения, загрузить и установить ее. Не лучший пользовательский опыт, думаю, как его улучшить.

Есть ли возможность добавить среду выполнения .net 5 (x86 или x64 в зависимости от пользовательской системы или, может быть, обоих) в качестве зависимости, чтобы она устанавливалась автоматически?

Я знаю, что могу определить зависимости, но как Я нашел подходящее имя для нужной зависимости?

Кроме того, я знаю, что можно определить настраиваемую установку action, но я еще не пробовал, потому что хочу найти более простое решение. Похоже, что для этого варианта мне придется создать небольшое приложение или скрипт, который будет проверять, существует ли необходимая среда выполнения, а если нет - проверьте платформу и попросите пользователя установить конкретную версию среды выполнения. Не лучший пользовательский опыт.

Конечно, у меня все еще есть возможность перейти на автономный, но я не хочу распространять столько мегабайт .net каждый раз, особенно с учетом того факта, что я ожидаю частых обновлений.


person Lev    schedule 21.05.2021    source источник
comment
Кстати, я узнал о зависимостях и действиях из этого ответа stackoverflow.com/a/58326092/3087417, но, к сожалению, этого не произошло. дайте мне ответ на мой вопрос.   -  person Lev    schedule 21.05.2021


Ответы (1)


К счастью, я получил ответ на techcommunity.microsoft.com

Спасибо Маттео Пагани:

если это приложение, основанное на .NET Core / .NET 5 (как я, кажется, понимаю из описания), предлагаемый и лучший способ распространения через MSIX - использовать подход самостоятельного развертывания. Благодаря функциям MSIX, таким как дифференциальные обновления и отдельный экземпляр диска, вам не нужно слишком беспокоиться об увеличенном размере, поскольку среда выполнения будет загружена только при первой установке.

Зависимости не подходят, потому что пакетов для .net 5 еще нет.

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

person Lev    schedule 26.05.2021