web-dev-qa-db-ja.com

ファイルまたはアセンブリ 'Microsoft.WindowsAzure.ServiceRuntime、Version = 2.0.0.0をロードできませんでした

Azure SDK 1.8を使用しており、ローカルで正常に動作しています。 TFSホストビルドコントローラーを使用してAzureに展開しています。

以前は正常に機能していましたが、Azure sdk dllのバージョンは変更されていませんが、突然このエラーが発生しましたが、オンラインではこのエラーが発生しました。これは、新しいSDKでTFSビルドコントローラーがアップグレードされたためですか?そして、このビルドが毎回成功しているという奇妙なことです。

TFSビルドサービスで、v2.0のsdkを参照している理由を見つけました。 enter image description here

Could not load file or Assembly 'Microsoft.WindowsAzure.ServiceRuntime, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located Assembly's manifest definition does not match the Assembly reference. (Exception from HRESULT: 0x80131040)
19
SOF User

他のすべてが失敗し、正しいDLLがビンにデプロイされている場合、web.configにアセンブリバインディングリダイレクトを追加してみてください。

<dependentAssembly>
  <assemblyIdentity name="Microsoft.WindowsAzure.ServiceRuntime" publicKeyToken="31bf3856ad364e35" />
  <bindingRedirect oldVersion="2.0.0.0" newVersion="1.8.0.0" />
</dependentAssembly>

必要に応じて、バインディングバージョン番号を変更します。

20
Dragos Durlut

これは、参照を2.0から2.2に更新したが、Web構成で参照されているバージョン2.0 dllがまだあったために起こりました。

<system.diagnostics>
<trace autoflush="true">
  <listeners>
    <add type="Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener, Microsoft.WindowsAzure.Diagnostics, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" name="AzureDiagnostics">
      <filter type="" />
    </add>
  </listeners>
</trace>
7
Lukos

これは、2.3.0.0にアップグレードしたときに起こりました。

それを修正するには、参照に行きました-> dllを右クリック->プロパティをクリック-> copy localをtrueに設定します。

3
Micah

私はあなたとまったく同じ問題にぶつかったと思います(正しく覚えていれば)。 1.8 SDKには、古いStorageClient dllへの参照が含まれていました。プロジェクトに参照を追加してみてください:

Microsoft.WindowsAzure.StorageClient version 1.7.0.0 

これが役立つかどうか教えてください!

1
Matt Wilson