Что ж, мой вопрос почти аналогичен встраиванию DLL в скомпилированный исполняемый файл , но очень хороший ответ, предоставленный здесь, теряет совместимость с моно-средой выполнения, хотя он работает в Windows.
Итак, как я могу использовать Fody
(Costura
), а также поддерживать моно-совместимость. Их документы на https://github.com/Fody/Costura#contents гласят:
CosturaUtility - это класс, который дает вам доступ к инициализации системы Costura вручную в вашем собственном коде. Это в основном для сценариев, в которых инициализатор модуля не работает, например для библиотек и Mono.
Для использования вызовите CosturaUtility.Initialize () где-нибудь в коде как можно раньше.
class Program { static Program() { CosturaUtility.Initialize(); } static void Main(string[] args) { ... } }
но даже после инициализации ConturaUtility
вручную он не поддерживает монофоническую среду выполнения.
Не думаю, что журнал ошибок актуален, но вот он:
Unhandled Exception:
System.IO.FileNotFoundException: Could not load file or assembly 'CommandLine, Version=2.2.1.0, Culture=neutral, PublicKeyToken=de6f01bd326f8c32' or one of its dependencies.
File name: 'CommandLine, Version=2.2.1.0, Culture=neutral, PublicKeyToken=de6f01bd326f8c32'
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.FileNotFoundException: Could not load file or assembly 'CommandLine, Version=2.2.1.0, Culture=neutral, PublicKeyToken=de6f01bd326f8c32' or one of its dependencies.
File name: 'CommandLine, Version=2.2.1.0, Culture=neutral, PublicKeyToken=de6f01bd326f8c32'