Я разрабатываю языковой сервис для Visual Studio через VSPackage. Мне нужно обновить данные анализа, когда файлы будут добавлены/удалены из проектов решений.
Я хочу подписаться на решения и события проекта.
Я попытался сделать следующее, но ни одно из этих событий не срабатывает, когда я добавляю/удаляю проекты в решение или добавляю/удаляю элементы в проекты.
DTE dte = (DTE)languageService.GetService(typeof(DTE));
if (dte == null)
return;
((Events2)dte.Events).SolutionEvents.ProjectAdded += SolutionEvents_ProjectAdded;
((Events2)dte.Events).SolutionEvents.ProjectRemoved += SolutionEvents_ProjectRemoved;
((Events2)dte.Events).ProjectItemsEvents.ItemAdded += ProjectItemsEvents_ItemAdded;
((Events2)dte.Events).ProjectItemsEvents.ItemRemoved += ProjectItemsEvents_ItemRemoved;
Какой лучший способ подписаться на эти события из VSPackage? Любая помощь ценится!