2014-09-05 3 views
4

Azure 웹 프로젝트가 방금 어셈블리 바인딩 오류를 표시하기 시작했습니다. Microsoft.Data.Edm v5.6.2.0을 찾을 수 없습니다.Visual Studio + Azure - 배포 디렉토리에 대한 참조 사본을 복사합니다.

내 프로젝트는 해당 어셈블리 버전을 너겟 패키지에서 참조합니다. 내가 프로젝트를 빌드 할 때

  • , 빈 \ 폴더 어셈블리의 올바른 버전이 포함되어 있습니다

    는 내가 발견 한 것은 이것이다.

  • 프로젝트를 Azure 에뮬레이터에 배포하면 bin \의 어셈블리가 이전 버전 인 v5.6.0.0으로 덮어 씁니다.

이전 버전은 내 솔루션의 프로젝트에서 참조하지 않지만 Microsoft.WindowsAzure.Storage v4.2.1.0에서 참조되며 이는 내 프로젝트에서 참조됩니다.

(사실, 어셈블리 내 프로젝트도 참조 스토리지 어셈블리 참조 이전 버전 : Microsoft.Data.Edm, Microsoft.Data.OData 및 Microsoft.Data.Services.Client - 세 가지 새로운 어셈블리

이 동작은 파란색으로 발생합니다. 일부 유지 관리에서 반복적으로 발생했으며 오늘 오후 20시에 Ctrl + F5를 눌렀고 갑자기 오류가 보였습니다.

  • 최신 버전은 웹 프로젝트의 bin\ 폴더에 덮어하지만입니다 하지 [azure project]\csx\Debug\roles\[web project name]\approot\bin 또는 영향을받는 참조가
  • 프로젝트의 DIFF을 로컬 복사본으로 설정되어
  • [azure project]\obj\Debug\[web project name]\bin 폴더에 덮어 파일이 마지막 커밋 이후 변경 사항을 표시하지 않습니다.
  • 동일한 솔루션에서 Azure 작업자 역할은 동일한 참조 집합을 갖지만 영향을받지 않습니다.
  • VS 다시 시작하지 않음 다시 부팅하면 문제가 해결됨

Visual Studio를 다시 설치하는 방법이 있습니까? 미친 마을

답변

3

에 오신 것을 환영합니다 :

  1. 주 20 개 복사본을 ~에서, 타임 스탬프가 C:\Program Files (x86)\Microsoft WCF Data Services\5.6\bin\.NETFramework에서 파일과 일치, 새로운 사람
  2. c:\> dir /s microsoft.data.edm.dll
  3. 발견을 덮어 쓰는 이전 어셈블리의 타임 스탬프 - 나는 결코 사용하지 않았다
  4. 해당 사본을 삭제하고 다시 작성
  5. t 그는 세 가지 참조를 더 이상 배포시 덮어 쓰지 않지만 Microsoft.Data.Services.Client.dll은 여전히 ​​있습니다! - 하지만 또 다른 타임 스탬프와 소스 파일에서
  6. 해당 파일의 소스를 찾기 : 그것은 그것을 삭제하고 다시 C:\Program Files\Microsoft SDKs\Windows Azure\.NET SDK\v2.3\ref
  7. 에 있어요 - 더 이상 덮어 쓰기! 문제 해결됨!

나는 단지 내가 똑같은 문제/솔루션을보고 있어요 왜 ...

+0

알고 싶어. 매우 저조한 글을 쓰는 장소가 있어야합니다. – RMD

+0

필자는 필자의 경우 Azure와 WCF 라이브러리 모두를위한 여러 SDK 버전을 추가했다. – RMD