我如何在MSBuild的自定义任务中访问当前项目环境? 起初,它看来好像对GlobalProjectCollection参考ProjectCollection将允许访问,但是这似乎是空的,从命令行运行的MSBuild至少当。
目前,我可以得到基于关闭以下方式当前工程文件的新项目如:
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 ...
}
}
但它只是似乎是一个很大的麻烦。 我如何才能获得访问从我的任务就是调用这个项目?