기존의 여러 프로젝트를 가져온 Visual Studio 2008 솔루션이 있습니다. 프로젝트는 혼합 언어 샘플 코드 (C #, VB, C ++ / CLI)입니다. 현재 여러 구성이 있지만 각 프로젝트에 단일 “디버그”구성 만 포함되기를 원합니다.
구성 관리자에서 다른 구성 (예 : “Release”)을 삭제했지만 그렇게 한 것처럼 개별 프로젝트에서 삭제되지 않는다는 경고 메시지가 표시되었습니다.
그리고 실제로 개별 프로젝트로 이동할 때 솔루션 수준에서는 “디버그”만 있음에도 불구하고 “릴리스”및 기타 구성이 여전히 있습니다.
각 프로젝트에서 이러한 추가 구성을 제거하는 가장 좋은 방법은 무엇입니까? GUI에서이 작업을 수행하는 방법을 간과하고 있습니까? 아니면 프로젝트 파일을 직접 편집해야합니까?
답변
구성 관리자에서 제거 할 구성이있는 각 프로젝트 의 “구성”열에서 “편집 …”을 선택합니다 (활성 솔루션 구성이라는 드롭 다운을 통하지 않음).
팝업 대화 상자에서 원하지 않는 각 구성을 표시하고 “제거”를 선택하십시오.
답변
답변
솔루션의 모든 프로젝트에서 구성 제거를 자동화하는 가장 좋은 방법은 Nuget 콘솔 명령을 사용하여 Visual Studio API에 액세스하는 것입니다.
이동 도구 , Nuget 패키지 관리자 , 패키지 관리자 콘솔 .
거기에서 사용 :
Get-Project -All | Foreach { $_.ConfigurationManager.DeleteConfigurationRow("Release") }
이러한 방식으로 "Release"
. 라는 모든 프로젝트에서 모든 구성을 제거했습니다 . 소스 코드 버전 관리 시스템의 차이점을 항상 확인하는 것이 좋습니다. Web.Release.config와 같은 구성 변환을 사용하는 경우 영향을받는 파일 만 볼 수 csproj
있으며 경우에 따라 sln
파일이 여전히 존재합니다.
자세한 내용은 여기 에서 Visual Studio 버전 별 api 문서에서 확인할 수 있으며, 이는 C ++, C #, F #, VB 언어의 경우 최소 VS 2015에서 작동합니다.
답변
내가 아는이 특정 질문에 대답하지 않지만 VS2013을 사용하면 속성 관리자 탭을 열고 모든 프로젝트 구성을 확장하고 CTRL 또는 SHIFT 키를 사용하여 다중 선택을 수행하고 한 번에 여러 프로젝트에서 구성을 삭제할 수 있습니다.