Я разрабатываю языковую службу для 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? Любая помощь приветствуется!