Установка пакета VSIX с регистрацией пользовательской библиотеки

Я сделал расширение Visual Studio, используя Roslyn для анализа и рефакторинга исходного кода. Я работаю над настраиваемым атрибутом, который объявлен в другом проекте решения, и в своем анализаторе ищу этот атрибут. Моя структура проекта выглядит следующим образом:

  • CustomAnalyzer.Base (Class library)
    • CustomAnalyzer.Base.MyCustomAttribute.cs (My attribute class)
  • CustomAnalyzer (методы анализа и рефакторинга)
  • CustomAnalyzer.Vsix (проект пакета VSIX)

В проекте CustomAnalyzer есть ссылка на CustomAnalyzer.Base. Я хочу, чтобы программисты могли добавлять аннотацию CustomAnalyzer.Base.MyCustomAttribute в свои методы после установки расширения в их Visual Studio. Но когда я устанавливаю расширение, я не могу добавить ссылку на CustomAnalyzer.Base, поскольку этой библиотеки нет в списке сборок.

Как я могу зарегистрировать свою библиотеку классов как расширение или сборку каркаса после установки расширения?


person Amin    schedule 20.08.2017    source источник


Ответы (1)


подпишите проект библиотеки классов с помощью пакета project key.snk.

щелкните правой кнопкой мыши проект -> Свойства -> подписывание -> включить, подписать сборку -> щелкните раскрывающийся список ниже -> Браузер ... -> выберите файл key.snk в проекте с именем HelloWorld2Parter -> Открыть -> перестройте проект.

введите здесь описание изображения

person Zhanglong Wu - MSFT    schedule 21.08.2017
comment
Я сделал это, как вы описали, но все же он не регистрирует мою сборку, поэтому у меня нет доступа к сборке в управлении ссылками в Visual Studio. - person Amin; 21.08.2017
comment
@Amin, Вы хотите зарегистрировать свой dll файл отдельно, как с помощью Regasm.exe или других? social.msdn.microsoft.com/Forums/vstudio/en-US/ - person Jack Zhai-MSFT; 29.08.2017