2012-08-07 1 views
6

최근에 제가 해왔 던 몇 가지 솔루션에서 Configuration Manager 대화 상자에 'Configuration'과 'Platform'에 대한 빈 필드가 표시되고 'Build'는 항상 선택 취소됩니다. 값을 변경하고 구성을 저장한다고해서 문제가 해결되지는 않습니다.Visual Studio에서 구성 관리자가 비어있는 이유는 무엇입니까?

이것은 모든 솔루션에서 발생하지는 않습니다 (예를 들어, 새 솔루션을 생성 할 때이 문제가 발생하지 않음). 왜 이런 일이 벌어 질 수 있으며 어떻게 해결할 수 있습니까?

스크린 샷 (검열 프로젝트 이름) : Configuration Manager

+0

'* .sln | * .csproj' 파일을 쓰기 가능한 상태로 만드나요? (OP는 문제가 될 경우 TFS를 사용합니다 ...) –

+0

메모장 +에서 VS 외부 파일을 수동으로 편집하면 어떻게됩니까? – xdumaine

+0

문제 해결 - 수신 답변! 그래도 제안 해 주셔서 감사합니다! – Pwninstein

답변

3

내가 인정하고 싶은 것보다 더 오래 그것으로 파고 후, 나는 범인은 Oracle 데이터베이스 프로젝트 (.oradbproj) 인 것으로 나타났습니다. 분명히 솔루션에 추가되었을 때 Visual Studio는 솔루션 구성과 데이터베이스 프로젝트의 프로젝트 구성 사이에 매핑을 만들지 않았습니다. 매핑을 수동으로 추가하면 문제를 해결하는 것처럼 보입니다. 솔루션 파일의 ProjectConfigurationPlatforms 섹션에있는 다른 프로젝트의 매핑을 복사 한 다음 GUID를 데이터베이스 프로젝트에 해당하는 GUID로 바꿨습니다. 변경을 저장하고 저장 한 다음 솔루션을 다시 열면 모든 것이 잘 어울립니다.

+0

그러나 "ActiveCfg"가있는 행만 "Build.0"이 아닌 TFS 작성기 서버가 실패하게됩니다. –

4

동일한 문제 (솔루션에 Oracle Database 프로젝트 추가)가 발생했습니다.

문제를 해결하려면 솔루션 파일 (.sln)을 편집해야합니다. Oracle Database 프로젝트를 찾습니다 (oradbproj 검색).

Project("{218574D1-FF94-4B95-8577-A6D58C11C315}") = "MyOracleDatabase", 
"MyOracleDatabase\MyOracleDatabase.oradbproj", "{41823BBF-36F6-42AC-9C41-119241BAAFEC}" 
    EndProject 

나중에 섹션 "GlobalSection (ProjectConfigurationPlatforms) = postSolution"의 시작에 대해 동일한의 .sln 파일 검색 : 당신이 뭔가를 찾아야한다. 이 같은 많은 항목이있을 것입니다 :

{CE85B8BD-1BCF-468C-AA0B-B869B87A66D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 
{CE85B8BD-1BCF-468C-AA0B-B869B87A66D5}.Debug|Any CPU.Build.0 = Debug|Any CPU 
{CE85B8BD-1BCF-468C-AA0B-B869B87A66D5}.Release|Any CPU.ActiveCfg = Release|Any CPU 
{CE85B8BD-1BCF-468C-AA0B-B869B87A66D5}.Release|Any CPU.Build.0 = Release|Any CPU 

그들은 앞의 예에서 "oradbproj"를 previos에서 두 번째 라인 ({41823BBF-36F6-42AC-9C41-119241BAAFEC}으로 GUID를 교체 복사) :

{CE85B8BD-1BCF-468C-AA0B-B869B87A66D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 
{CE85B8BD-1BCF-468C-AA0B-B869B87A66D5}.Debug|Any CPU.Build.0 = Debug|Any CPU 
{CE85B8BD-1BCF-468C-AA0B-B869B87A66D5}.Release|Any CPU.ActiveCfg = Release|Any CPU 
{CE85B8BD-1BCF-468C-AA0B-B869B87A66D5}.Release|Any CPU.Build.0 = Release|Any CPU 
{41823BBF-36F6-42AC-9C41-119241BAAFEC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 
{41823BBF-36F6-42AC-9C41-119241BAAFEC}.Debug|Any CPU.Build.0 = Debug|Any CPU 
{41823BBF-36F6-42AC-9C41-119241BAAFEC}.Release|Any CPU.ActiveCfg = Release|Any CPU 
{41823BBF-36F6-42AC-9C41-119241BAAFEC}.Release|Any CPU.Build.0 = Release|Any CPU 

이제의 .sln 파일을 저장할 수 있습니다. Visual Studio 외부에서 .sln 파일을 편집하여 Visual Studio로 다시 열면 솔루션을 다시로드하라는 메시지가 나타납니다. 예를 클릭하고 기다립니다. 그건!!!