[C#] 가져온 프로젝트“C : \ Microsoft.CSharp.targets”를 찾을 수 없습니다.

오늘 Visual Studio 2005에서 Visual Studio 2008 프로젝트 를 열려고 할 때이 오류가 발생했습니다 .

가져온 프로젝트 “C : \ Microsoft.CSharp.targets”를 찾을 수 없습니다.



답변

메모장 (또는 메모장 ++)에서 csproj 파일을 엽니 다.

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

그리고 그것을

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />


답변

이것은 특정 패키지 또는 빈에 의존하지 않는 글로벌 솔루션입니다.

제 경우에는 루트 디렉토리에서 Packages 폴더를 제거했습니다 .

패키지가 있지만 컴파일러가 참조를 찾지 못하기 때문에 발생할 수 있습니다. 따라서 먼저 이전 패키지를 제거하고 새 패키지를 추가하십시오.

새 패키지추가하는 단계

  • 먼저 패키지 폴더를 제거합니다 ( 현재 프로젝트 폴더에 가깝거나 한 단계 올라갑니다 ).
  • 그런 다음 프로젝트 또는 솔루션을 다시 시작하십시오.
  • 이제 솔루션 파일을 다시 빌드하십시오.
  • 프로젝트는 nuGet 패키지 관리자에서 새 참조를 가져옵니다. 그리고 문제가 해결되었습니다.

이것은 적절한 해결책이 아니지만 동일한 문제에 직면했기 때문에 여기에 게시했습니다.

제 경우에는 Visual Studio에서 솔루션을 열 수 없었고 다른 SO 답변에 대한 도움도 얻지 못했습니다.


답변

나에게 문제는 저장소가 복제 될 때 git이 공백 대신 문자를 추가했기 때문에 프로젝트 경로에 % 20 문자가 포함되어 있다는 것입니다. 패키지 경로가 너무 긴 경우 또 다른 문제가있을 수 있습니다.


답변

MSDN 의이 링크 는 작동하지 않는 이유를 이해하는데도 많은 도움이됩니다. $ (MSBuildToolsPath)는 Microsoft.Build.Engine v3.5의 경로입니다 (VS2008에서 만들 때 프로젝트 파일에 자동으로 삽입 됨). .Net 2.0 용 프로젝트를 빌드하려는 경우이 경로를 Microsoft.Build.Engine v2.0의 경로 인 $ (MSBuildBinPath)로 변경했는지 확인하십시오.


답변

제 경우에는 솔루션 에 5 개 프로젝트 중 하나 를 로드 할 수 없습니다 .

Visual Studio닫는 데 도움이 되었고 폴더 아래의 nuget 폴더 를 삭제 해야했습니다 .Microsoft.Net.Compilers.1.3.2packages

그런 다음 솔루션을 다시 열고 프로젝트가 예상대로로드됩니다.

확실하게 폴더를 삭제하기 전에 VS의 모든 인스턴스를 닫으십시오.


답변

csproj 파일에 다음 줄이 있습니다.

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />

이 파일을 삭제하면 정상적으로 작동합니다.


답변

라는 오류가 발생하면 Microsoft.CSharp.Core.targets not found다음 단계를 수행하여 내 문제를 수정했습니다.

  1. 이전 작업 프로젝트 폴더를 열고 오류에 표시된 링크, 즉 파일을 Projects/(working project name)/packages/Microsoft.Net.Compilers.1.3.2/tools/검색 Microsoft.CSharp.Core.targets하십시오.

  2. 이 파일을 복사하여 작동하지 않는 프로젝트에 넣습니다 tools folder(즉, 위에 표시된대로 작동하지 않는 프로젝트의 도구 폴더로 이동).

  3. 이제 프로젝트를 닫고 (열린 경우) 다시 엽니 다.

지금 작동해야합니다.

또한 이제 열려있는 Visual Studio 프로젝트에서 모든 것이 제대로 작동하는지 확인하려면 Tools > NuGetPackage Manager > Manage NuGet Packages For Solution. 여기에서 CodeAnalysis.dll이 다른 응용 프로그램에서 사용 중이라는 오류를 찾을 수 있습니다.

다시으로 이동 tools folder하여 지정된 파일을 찾아 삭제하십시오. 로 돌아 오십시오 Manage NuGet Packages For Solution. 새로 고침을 요청하는 링크를 찾아 클릭하면 모든 것이 다시 설치됩니다.

이제 프로젝트가 제대로 작동 할 것입니다.