MSIX не упаковывает все зависимости - PullRequest
0 голосов
/ 18 июня 2020

Я пытался упаковать свой WPF. Net Приложение Core 3.1 в установщик MSIX с использованием проекта упаковки.

Однако при отладке или тестировании вывода вручную приложение вылетает при запуске из-за ему не хватает библиотеки DLL Microsoft.EntityFrameworkCore.Design, от которой зависит мое приложение. Я не совсем понимаю, почему это происходит.

Я не ссылаюсь на этот пакет напрямую, только на пакеты Microsoft.EntityFrameworkCore.Sqlite и Microsoft.EntityFrameworkCore.Tools, но когда я пытаюсь сослаться на него напрямую, поведение не меняется.

Я пытался следовать этому руководству, чтобы настроить его для справки: https://docs.microsoft.com/en-us/windows/apps/desktop/modernize/modernize-wpf-tutorial-5

Я вижу, что dll отсутствует в Папка, есть ли что-то еще, что мне нужно сделать поверх этого руководства, чтобы запустить мое приложение? DLL находится в каталоге сборки для самого приложения, но не в каталоге сборки для пакета.

Любые предложения будут действительно полезны

1 Ответ

0 голосов
/ 18 июня 2020

Итак, после настройки параметров я обнаружил, что пакет Microsoft.EntityFrameworkCore.Tools, который ссылался на отсутствующий пакет Microsoft.EntityFrameworkCore.Design, имел некоторые свойства, блокирующие его включение в вывод проекта пакета.

При нажатии F4 в справочнике EF C .Tools я обнаружил, что для его свойства Private assets установлено значение «all». Глядя на документацию для этого, я вижу, что это предотвратит передачу dll в проект пакета, где она будет необходима.

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

...