MEF С переносимой библиотекой классов с использованием Microsoft Composition MEF2 выбрасывает файл не найден исключение

Я работаю над Portable Class Library(PCL) и пытаюсь достичь MEF в этом. Я использовал System.Composition от Nuget. Когда я собираю и упаковываю для vsix (расширение для Visual Studio), он не упаковывает и не помещает эти dll в папку расширений (C:\Users\ Имя пользователя \AppData\Local\Microsoft\VisualStudio\14.0Exp\Extensions\ExtensionName\AppName\versionofYourApp). Когда я вручную помещаю эти библиотеки в эту папку, она работает нормально. Может кто-нибудь предложить хорошее решение этой проблемы. Я пишу это для Roslyn Analyzers и создаю пакет nuget. Снова я сталкиваюсь с той же самой проблемой, даже если я упаковываю эти библиотеки вместе.

2 ответа

Установите для параметра "Копировать локально" значение "истина" в ссылке VSIX на библиотеки MEF.

Я нашел решение, подумал поделиться. Вы можете исправить и предложить. Для расширения Vsix я добавил эти библиотеки в качестве ресурса (VisualStudio.Assembly) из локального.

А для пакетов Assembly.Load("AssemblyName") пытался загрузить библиотеку из всех возможных мест, таких как " C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies" и многих других. Так что я положил его туда, и он был загружен. Я знаю, что это не лучшее решение. Вы можете предложить.

Другие вопросы по тегам