¿Cómo accedo al contexto actual del proyecto dentro de una tarea personalizada en MSBuild? Al principio, parecía como si la referencia GlobalProjectCollection en ProjectCollection permitiera el acceso, pero parece estar vacía, al menos cuando se ejecuta MSBuild desde la línea de comandos.¿Cómo accedo al contexto actual del proyecto dentro de una tarea personalizada?
puedo conseguir Actualmente nueva instancia de Project con sede fuera del archivo de proyecto actual de la siguiente manera:
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 ...
}
}
pero parece como un montón de problemas. ¿Cómo puedo acceder al proyecto desde el que se invoca mi tarea?
Tiene razón. Incluso la tarea tiene referencias de su proyecto contenedor pasado a ella, en lugar de hacer referencia a algún objeto padre desde dentro. Como esto es lo que estoy tratando de hacer, buscaré derivar referencias de manera similar a esta tarea central. –
bojolais
¿Qué pasa con las propiedades globales? ¿Se puede acceder a esos dentro de una tarea? – Irek