Como obter o valor de uma propriedade msbuild de uma tarefa personalizada?
-
03-07-2019 - |
Pergunta
Existe alguma maneira para acessar o valor de uma propriedade msbuild de uma tarefa personalizada? Eu sei que posso enviá-los todos, mas seria bom para não :) Tentando fazer isso a partir de uma compilação TFS.
Ou há maneira som para acesso a "script de construção" atualmente em execução? Talvez como um modelo de objeto e de lá começa o que eu preciso?
Solução
Isso deve fazer o trabalho.
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;
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow