2012-08-15 2 views
1

필요에 따라 .csproj 파일에서 프로젝트 속성 및 참조를 추가/삭제하는 응용 프로그램을 개발 중입니다.원본 .csproj 파일의 변경 내용

project.AddItem("Reference", "System.IO", globalProperties); 
project.AddItem("Reference", "System.Collections.Generic", globalProperties); 

위의 코드는 항목을 추가합니다. project.Items에서 ProjectItem을 인쇄 할 때 추가 된 참조를 볼 수 있습니다. 수정할 필요가있는 .csproj 파일을 열면 변경 내용이 표시되지 않습니다 (파일 복사본이 전달되기 때문에). 그러나 수정중인 .csproj 파일에서 변경 내용을 적용하려고합니다. "ref"키워드를 사용해 보았지만 작동하지 않습니다. 누군가가 그것에 대해 어떻게 말해 줄 수 있습니까?

감사합니다.

+0

당신은 알고 있습니까를 이거? Microsoft.Build.Evaluation.Project http://msdn.microsoft.com/en-us/library/microsoft.build.evaluation.project.aspx –

+0

여기에서 사용하고 있습니다. 그렇지 않으면 Project 및 ProjectCollection 클래스에 액세스 할 수 없습니다. ... – aromore

+1

그럼 Save() 메소드 만 사용하면됩니다. –

답변

1

당신은 오 그

var slItemGroup = project.Xml.CreateItemGroupElement(); 
project.Xml.InsertAfterChild(slItemGroup, project.Xml.LastChild); 
slItemGroup.AddItem("Reference", "System.IO"); 

같은 참조하기 전에 먼저 항목 그룹을 추가해야하고 프로젝트의 방법 저장 호출 할 필요가 : 표준 API가 있다고

project.Save(projectFileName);