Visual Studio 2013으로 업그레이드 한 후 SQLServer.targets 파일이 누락 된 경우 프로젝트가로드되지 않습니다.
-
20-12-2019 - |
문제
Visual Studio 2013으로 업그레이드 한 경우 솔루션을 열려고 시도 할 때 이전 SQL 프로젝트가로드되지 않음을 발견했습니다.표시되는 오류는 다음과 같습니다.
가져온 프로젝트 "C : \ Program Files (x86) \ msbuild \ 12.0 \ bin \ sqlserver.targets"를 찾을 수 없습니다.선언의 경로가 올바른지, 그리고 파일이 디스크에 있는지 확인하십시오.C : \ 일부 \ Path \ to \ project \ database.sqlproj
내 .sqlproj
파일에서는 라인이 있습니다
<Import Project="$(MSBuildToolsPath)\SqlServer.targets" />
.
Visual Studio 2012에서 C:\Windows\Microsoft.NET\Framework\v4.0.30319\SqlServer.targets
에서 Visual Studio 2013에서는 C:\Program Files (x86)\MSBuild\12.0\bin\SqlServer.targets
로 해결됩니다.그러나 SqlServer.targets
파일은 이러한 위치 중 하나가 아닙니다.
아마도 이것은 .NET Framework의 일부가 아닌 Visual Studio의 일부가되는 MSBuild 때문입니다.
이 문제를 해결 하고이 프로젝트를 Visual Studio 2013으로 마이그레이션하는 방법을 알고 있습니까?
해결책
VS 2013에서 VS 2010 솔루션을 작성하려고 할 때 동일한 문제가있었습니다. Fix는 솔루션 파일을 VS 2013으로 업그레이드하는 것이 었습니다.그런 다음 추가 수정없이 작동했습니다.
다른 팁
SqlServer.targets
에서 C:\Windows\Microsoft.NET\Framework\v3.5
에서 C:\Program Files (x86)\MSBuild\12.0\Bin
를 복사하고 도움이됩니다.VS2013은 이전 프로젝트를 열 수 있습니다.
Visual Studio 2008에서 2013 년으로 업그레이드 할 때 비슷한 문제가있었습니다. 그것은 잠시 있었지만 VS 2013 (다시)에 SSDT를 설치해야했습니다 (다시) 새로운 SQLServer.targets 파일의 상대 경로를 찾기 위해 새 데이터베이스 프로젝트를 만들어야했습니다. 그것은 다음과 같아야합니다 :
<Import Condition="'$(SQLDBExtensionsRefPath)' != ''" Project="$(SQLDBExtensionsRefPath)\Microsoft.Data.Tools.Schema.SqlTasks.targets" />
<Import Condition="'$(SQLDBExtensionsRefPath)' == ''" Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets" />
.
이 오류를 해결하는 것이 가장 큰 장애가있는 것이 오류 메시지를 이해하려고 시도했습니다 (BC2014 : 값 '데이터베이스'은 '옵션'대상 '에 대해 유효하지 않음)
이 도움이되기를 바랍니다!
나는 같은 문제가 있었고 나는이 방법으로 해결되었습니다. ' c : \ windows \ microsoft.net \ framework \ v4.0.30319' '의' sqlserver.targets '라는 파일을 다음 내용으로 만듭니다.
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<SqlClrTargetsFullPath>$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\TeamData\Microsoft.Data.Schema.SqlClr.targets</SqlClrTargetsFullPath>
</PropertyGroup>
<Import Project="$(SqlClrTargetsFullPath)" Condition="Exists('$(SqlClrTargetsFullPath)')"/>
</Project>
.
행운을 빕니다.
Windows 10
에서 이전 프로젝트를 열 때도 발생할 수도 있습니다.Windows 10에서 Visual Studio 2010에서 이전 SQL Server CLR 어셈블리를 열 때 동일한 문제가있었습니다 (SQLServer.targets)./ P>
Windows 7 컴퓨터에서 Visual Studio 2010에서 동일한 프로젝트가 완벽하게 열립니다.
용액
오류 메시지에주의하십시오.내 경우에는 다음과 같습니다 :
가져온 프로젝트 "C : \ Windows \ Microsoft.Net \ Framework \ v4.0.30319 \ SQLServer.targets"를 찾을 수 없습니다.선언의 경로가 올바른지, 파일이 디스크에 존재하는지 확인하십시오.
vladimir dronov의 답변, "C : \ 윈도우 \ Microsoft.Net \ framework \ v3.5 \ sqlserver.targets"에 표시된 위치에서 SQLServer.targets를 오류 메시지에 표시된 디렉토리에 복사합니다. C : \ Windows \ Microsoft.Net \ Framework \ v4.0.30319 \ ".
이들 솔루션 중 몇 가지로 인한 오류
특정 질문 ( c # vs 2013 오류 02019 : 잘못된 대상 유형 / 대상 : 'exe', 'winexe', 'library', 'module', 'appcontainerexe'또는 'winmdobj'csc 를 지정해야합니다. 블라디미르 Dronov의 답변 아래의 Chris Torng에서 설명한 치명적인 빌드 오류 :
오류 1 02019 : "EXE ','Winexe ','Librar ','Module ','AppContainerExe '또는'WinMDOBJ 'CSC
를 지정해야합니다.
수정
이 포럼의 조언을 따르면 VS2013 Community Edition의 SQL Server Dev 도구 호환성 문제와 관련된 오류를 제거 할 수있었습니다.
https://connect.microsoft.com/sqlserver/feedbackdetail/view/979839.
BSClifton이 발행 한 11/15/2014 at 7:18 am
커뮤니티 2013 판 에도이 문제가있었습니다. 도구 -> 확장 및 업데이트 및 업데이트 및 업데이트 "데이터베이스 툴링을위한 Microsoft SQL Server 업데이트"문제가 해결되었습니다.)
이것이 당신을 위해 작동하지 않으면 문제를 해결하는 방법에 대한 몇 가지 다른 아이디어를 제시 할 때 그 포럼을 체크 아웃하는 것이 좋습니다.
용액 1 :
프로젝트가 .csproj 파일 인 경우, Visual Studio는 업그레이드하는 동안 .sqlproj 파일도 생성되었는지 확인해야합니다.이 경우 대신 해당 솔루션에 해당 솔루션에 추가 할 수 있습니다.
용액 2 :
.sqlproj 파일에서 다음 행을 변경하려고 시도 할 수 있습니다.
<Import Project="$(MSBuildToolsPath)\SqlServer.targets" />
.
~
<Import Project="$(MSBuildBinPath)\SqlServer.targets" />
.