2014-01-28 5 views
0

VS 2010 Win7 x64에서 .Net 4.0을 대상으로하는 WCF 프로젝트가 있습니다.이 어셈블리는 서명 된 어셈블리입니다. Box.V2 SDK는 NuGet을 통해 설치되었으며 우리가 사용하는 버전은 1.0.5입니다. 우리는 솔루션을 구축하는 첫 번째 문제는 우리가 다음 오류 때문에 앞으로 갈 수 Box.V2 DLL을 자체였다 시도하면 Box.V2 SDK 배포 문제 : 파일 또는 어셈블리 'Nito.AsyncEx ...'또는 해당 종속성 중 하나를로드 할 수 없습니다. 강력한 이름의 어셈블리가 필요합니다.

나쁜 일

이 발생하기 시작 :

"Assembly generation failed -- Referenced assembly 'Box.V2' does not have a strong name".

우리 'Brutal Developer .NET Assembly Strong-Name Signer (1.3.0.0)'을 사용하여 어셈블리에 서명함으로써이 문제를 극복 할 수있었습니다.

var config = new BoxConfig(clientId, clientSecret, new Uri(redirectUri)); 
var client = new BoxClient(config); 
:

"Could not load file or assembly 'Nito.AsyncEx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. A strongly-named assembly is required. (Exception from HRESULT: 0x80131044)".

우리는 클라이언트를 인스턴스화하려면 다음 코드를 사용 :

이 성공적으로 내장되어있어 후 우리는 다음과 같은 메시지와 함께 예외를 던질 것 BoxClient을 만드는 반면, 두 번째 문제에 부딪쳤다

여기서 clientId, clinetSecret 및 redirectUri는 메소드의 매개 변수입니다. 이 문제를 해결하기 위해 촬영

단계 :

  1. Nito.AsyncEx.dll 같은 전술 도구를 사용하여 서명 한 - 같은 예외를.
  2. Nito.AsyncEx 어셈블리는 실제로 최신 버전 (2.1.3.0)으로 업그레이드되었으며 실제로 어셈블리를 수정하여 강력한 어셈블리 이름을 사용했습니다.
  3. 여기에 제출 된 문제 중 하나 (https://github.com/box/box-windows-sdk-v2/issues/3)도 비슷한 문제가 있었지만 제안 된 시나리오를 따르려고했지만 도움이되지 않았습니다.
  4. 동일한 예외가 던져지기 때문에 우리는 전혀 어셈블리에 서명하지 않으려 고 노력했지만 다시는 무의미했습니다.
  5. 우리는 또한 꼬집고 here에 설명 된대로 Box.V2.dll에 서명했지만, 이러한 오류가 발생하고 심지어 나중에 그것을 만들 수 없습니다 :

The base class or interface 'System.Object' in assembly 'System.Runtime, Version=2.6.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' referenced by type 'Box.V2.BoxClient' could not be resolved

The base class or interface 'System.Object' in assembly 'System.Runtime, Version=2.6.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' referenced by type 'Box.V2.Config.BoxConfig' could not be resolved

그래서 우리는 현재 박스를 배포 붙어 Google 제품의 API가 다소 실망 스럽습니다.

도움을 주시면 대단히 감사하겠습니다.

답변

1

Box 팀은 서명 된 어셈블리가 포함되어 있으며 잘 해결 된 업데이트 SDK를 제공했습니다.

+0

SDK를 어디에서 다운로드 할 수 있습니까? 나는 아직도 문제를 만난다. https://github.com/box/box-windows-sdk-v2에서 SDK를 다운로드하고 Nito.AsyncEx 패키지를 직접 복사했지만 아무 일도 일어나지 않습니다. ( – xqMogvKW

+0

Nuget에서 라이브러리가 올바르게 저장되어 있음을 기억하는 한 서명 된 어셈블리의 버전 –