Я пытаюсь написать расширение Visual Studio, которое позволяет мне публиковать несколько веб-приложений в решении, аналогично использованию функции публикации одним щелчком во всех проектах.
DTE2 service = (DTE2)this.GetService(typeof(DTE));
Projects projects = service.Solution.Projects;
SolutionBuild2 build = (SolutionBuild2)service.Solution.SolutionBuild;
foreach (Project project in projects)
{
build.PublishProject("Release", project.UniqueName, true);
}
Когда япопробуйте запустить этот код, единственный результат в окне вывода - это:
Error: Object reference not set to an instance of an object.
========== Publish: 0 succeeded, 0 failed, 0 skipped ==========
... что мне мало что говорит.Есть ли способ узнать, что идет не так?
Я также вижу там интерфейс IVsPublishableProjectCfg , но, похоже, нет примеров того, как его использовать.
Есть ли другой способ программной публикации веб-приложений в определенном каталоге, аналогичный тому, как работает функция публикации одним щелчком?