VS 2010 Win7 x64 で .Net 4.0 をターゲットとする WCF プロジェクトがあります。これは署名付きアセンブリであることに注意してください。Box.V2 SDK は NuGet を介してインストールされており、使用しているバージョンは 1.0.5 です。
ソリューションを構築しようとすると、悪いことが起こり始めました。最初の問題は、次のエラーのために先に進むことができなかった Box.V2 dll 自体にありました。
「アセンブリの生成に失敗しました -- 参照されたアセンブリ 'Box.V2' には厳密な名前がありません」.
「Brutal Developer .NET Assembly Strong-Name Signer (1.3.0.0)」を使用してアセンブリに署名することで、この問題を克服することができました。
正常にビルドされた後、BoxClient を作成すると次のメッセージで例外がスローされるという 2 番目の問題に遭遇しました。
「ファイルまたはアセンブリ 'Nito.AsyncEx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' またはその依存関係の 1 つを読み込めませんでした。厳密な名前のアセンブリが必要です。(HRESULT からの例外: 0x80131044)」.
次のコードを使用して、クライアントをインスタンス化しました。
var config = new BoxConfig(clientId, clientSecret, new Uri(redirectUri));
var client = new BoxClient(config);
ここで、clientId、clinetSecret、redirectUri はメソッドのパラメーターです。
問題を解決するために実行した手順:
- Nito.AsyncEx.dll は、前述の同じツールを使用して署名されました - 同じ例外です。
- Nito.AsyncEx アセンブリは最新バージョン (2.1.3.0) にアップグレードされました。実際、彼らはそれを微調整し、アセンブリに厳密な名前を使用しましたが、まだうまくいきません。
- ここに提出された問題の 1 つ ( https://github.com/box/box-windows-sdk-v2/issues/3 ) にも同様の問題があり、提案されたシナリオに従おうとしましたが、あまり役に立ちませんでした。
- アセンブリにまったく署名しないようにしましたが、同じ例外がスローされたため、再び無駄になりました。
- また、ここで説明されているように、Box.V2.dll を微調整して署名しようとしましたが、これらのエラーがスローされたため、後でビルドすることさえできませんでした。
タイプ「Box.V2.BoxClient」によって参照されるアセンブリ「System.Runtime、Version=2.6.3.0、Culture=neutral、PublicKeyToken=b03f5f7f11d50a3a」の基本クラスまたはインターフェイス「System.Object」を解決できませんでした
タイプ「Box.V2.Config.BoxConfig」によって参照されるアセンブリ「System.Runtime、Version=2.6.3.0、Culture=neutral、PublicKeyToken=b03f5f7f11d50a3a」の基本クラスまたはインターフェイス「System.Object」を解決できませんでした
そのため、現在、製品に Box API をデプロイするのに行き詰まっており、かなりイライラしています。
どんな助けでも大歓迎です。