Как получить значение свойства msbuild из пользовательской задачи? - PullRequest
3 голосов
/ 04 марта 2009

Есть ли какой-нибудь способ получить доступ к значению свойства msbuild из пользовательской задачи? Я знаю, что могу отправить их всех, но было бы неплохо не делать этого :) Попытка сделать это из сборки tfs.

Или есть какой-то способ получить доступ к "скрипту сборки", запущенному в данный момент? Может, как объектная модель и оттуда получить то, что мне нужно?

1 Ответ

2 голосов
/ 04 марта 2009

Это должно сделать работу.

  public override bool Execute()
  {
    string projectFile = BuildEngine.ProjectFileOfTaskNode;

    Engine buildEngine = new Engine(System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeDirectory());

    Project project = new Project(buildEngine);
    project.Load(projectFile);
    foreach(var o in project.EvaluatedProperties)
    {
      // Use properties
    }

    return true;
  }
...