MSBuild에서 사용자 정의 태스크 내에서 현재 프로젝트 컨텍스트에 어떻게 액세스합니까? 처음에는 ProjectCollection에있는 GlobalProjectCollection 참조가 액세스를 허용하는 것처럼 보였지만 적어도 명령 줄에서 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 ...
}
}
을하지만, 그것은 단지 문제가 많은 것 같아 :
저는 현재 다음과 같은 방법으로 현재 프로젝트 파일을 기반으로 새 프로젝트 인스턴스를 얻을 수 있습니다. 내 작업이 호출 된 프로젝트에 대한 액세스 권한을 얻으려면 어떻게해야합니까?
정확합니다. 작업에도 내부에서 일부 상위 개체를 참조하는 대신 전달 된 컨테이너 프로젝트의 참조가 있습니다. 이것이 내가 현재 참조하려고하는 것이므로,이 핵심 작업과 비슷한 방식으로 참조를 유도 할 것입니다. –
bojolais
글로벌 속성은 어떻습니까? 작업 내에서 액세스 할 수 있습니까? – Irek