2017-01-18 15 views
1

Visual Studio 2015 빌드 프로세스가 새 (.NET 4.0) GAC에 추가 된 어셈블리를 찾지 못합니다. 어셈블리를 추가Visual Studio 2015 빌드가 새로운 (.NET 4.0) GAC에 추가 된 어셈블리를 찾지 못하는 이유는 무엇입니까?

잘했다, 그들은에 표시 :

C:\Windows\Microsoft.NET\assembly\GAC_MSIL 

그리고 레퍼런스 디자인 타임에 올바른 것으로 나타납니다하지만 내가 빌드 할 때 참조가없는 것처럼 실패합니다.

문제와 관련이있을 수 있으므로 SSIS 스크립트 패키지 (.dtsx 파일)로 작업하고 있습니다.

참고 : 빌드 프로세스는 빌드 할 때 이전 GAC에 설치 한 어셈블리를 찾고 있습니다. 새 GAC의 어셈블리가 아닙니다.

왜 이런 일이 발생할 수 있습니까?

답변

0

단순히 참조를 추가하면 대개 third-party .dll이 문제를 해결할 수 없으므로 수동으로 전역 어셈블리 캐시를 등록해야합니다.

1 단계 : 시작 관리자

2 단계로 command prompt for VS : 다음 gacutil /i name of the dll.dll하여 어셈블리를 등록 : 디렉토리 변경 cd

cd C:\Windows\Microsoft.NET\assembly\GAC_MSIL 

단계 3 참조 폴더에 다음 단계는

4 단계 : 시각 스튜디오를 다시 시작하십시오.

+0

감사합니다. 그러나 다양한 파일이 있습니다. GAC에 설치 준비. 그리고 VS는 디자인 타임에 잘 찾아 냈지만, 빌드하면 새로운 GAC에있는 것들을 잃어 버리게됩니다. – GP24

+0

타사 DLL을 사용하려고 할 때 Nuget 패키지 관리자에서 다운로드하려고하는 경우 디자인 시간에 캐시 임시 폴더에 다운로드됩니다. (나는 당신이 C# 스크립트 작업), 작업을 닫은 후 다시 열면 사라질 것입니다. 아마도'register' 단계와 관련이 있습니다. 다운로드 한 dll 파일을 복사하여 자신의 폴더에 넣어도 GAC에 패키지를 등록하기 전에 패키지를 실행할 수는 없습니다. – LONG

+0

이것은 실제로는 제 3 자 DLL이 아니지만 여기서는 중요하지 않은 이유로 GAC에 있어야합니다. 거기에 설치했는데 Visual Studio는 디자인 타임에 찾아 냈지만 빌드시에는 찾지 못했습니다. – GP24