Написание аддин или плагин фреймворк на C #

Я пишу Addin Framework на C #, и мне интересно, как я могу сделать Addin не загружаемым без необходимости перезапуска приложения.

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

Или есть другие способы получения выгружаемых надстроек, но IIRC, кроме AppDomain, нельзя выгружать сборку.

Я также хочу, чтобы движок addin был совместим с Mono, если это возможно, поэтому любые ответы стараются оставаться совместимыми с Mono, если это возможно.

Ответы на вопрос(3)

Ваш ответ на вопрос