Come accedere al contesto del progetto corrente all'interno di un'attività personalizzata in MSBuild? All'inizio sembrava che il riferimento a GlobalProjectCollection su ProjectCollection consentisse l'accesso, ma questo sembra essere vuoto, almeno quando si esegue MSBuild dalla riga di comando.Come accedere al contesto del progetto corrente all'interno di un'attività personalizzata?
posso attualmente trovare nuova istanza di Project in base al largo del file di progetto corrente nel seguente modo:
List projectAssemblies = new List();
using (XmlReader projectFileReader =
XmlReader.Create(this.BuildEngine.ProjectFileOfTaskNode))
{
Project project = new Project(projectFileReader);
foreach (ProjectItem item in project.AllEvaluatedItems)
{
... woo hoo ...
}
}
ma sembra proprio come un sacco di guai. Come posso accedere al progetto da cui è stato invocato il mio compito?
Sei corretto. Anche l'attività contiene riferimenti dal suo progetto contenitore, piuttosto che fare riferimento a qualche oggetto padre dall'interno. Poiché questo è quello che sto attualmente cercando di fare riferimento, cercherò di ricavare riferimenti in modo simile a questo compito principale. –
bojolais
E riguardo le proprietà globali? È possibile accedere a quelli all'interno di un'attività? – Irek