https://learn.microsoft.com/en-us/dotne ... in-support < /p>
Это гарантирует, что каждый плагин загружен в свой собственный контекст, чтобы плагины могли успешно использовать сборки с противоречивыми версиями между плагины.
Один из моих плагинов использует сторонний DLL, который мне не разрешают перераспределить, поэтому пользователям необходимо загрузить это (и лицензию на использование).
Если бы это было автономное приложение, которое регулярно работает в Windows/Linux, это не вызовет каких -либо проблем, поскольку я мог бы направить пользователей копировать DLL непосредственно в ту же папку, что и плагин. < бренд /> Я хочу создать это как общедоступное изображение Docker, которое предотвращает копирование пользователей непосредственно в папку плагина. В папке «Данные», которая будет сопоставлена в контейнер Docker (где будут записаны журналы). Ссылка на сборку в файле проекта работает просто отлично: < /p>
Код: Выделить всё
..\..\data\lib\Some3rdParty.dll
false
runtime
< /code>
Все хорошо компилируется. system.Reflection.ReflectionTypeloAdexception: невозможно загрузить один или несколько запрашиваемых типов. Сделайте ссылку на плагин с сторонней сборкой и загрузите его из совершенно другой папки, в то время как мое основное приложение может загрузить плагин без ошибок?
Подробнее здесь: https://stackoverflow.com/questions/794 ... istributin