简体   繁体   中英

Missing Microsoft.Data.Services.Client version 5.6 on Azure Websites

I've recently tried to deploy a website to the Windows Azure websites service which utilizes Azure Storage. Upon deployment, I received the following error coming from the Storage SDK, which seems to reference a version of an assembly that doesn't yet exist. I have not been able to find this version of the DLL file anywhere. Any suggestions?

Could not load file or assembly 'Microsoft.Data.Services.Client, Version=5.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

Storage client library has a dependency on this assembly and unfortunately it's not downloaded automatically when you install the library through Nuget. You would need to get this package yourself. You can download this package from here: http://www.nuget.org/packages/Microsoft.Data.Services.Client/ .

For more information, please read the comments on this blog post from storage team: http://blogs.msdn.com/b/windowsazurestorage/archive/2013/11/27/windows-azure-storage-release-introducing-cors-json-minute-metrics-and-more.aspx .

I ended up removing storage, installing the 5.6.0 version and then re-installing

  UnInstall-Package WindowsAzure.Storage

  Install-Package Microsoft.Data.Services.Client -Version 5.6.0

  Install-Package WindowsAzure.Storage

Agree with StressChicken. The thing here is the latest WindowsAzure.Storage will install Services.Client 5.6.1 by default, which will throw exception for some reason. just install Service.Client 5.6.0 before WindowsAzure.Storage. Then WindowsAzure.Storage will use the installed 5.6.0 to resolve dependency.

Installing the nuGet package above still didn't help me when publishing to Azure from Visual Studio 2013. I had to manually upload the Microsoft.Data.Services.Client.dll to the bin folder via FTP to Azure. Hope that helps someone as well.

I found I had to uninstall WindowsAzure.Storage and Microsoft.Data.Services.Client. Then (using Package Manager Console) I installed the specific version of Microsoft.Data.Services.Client:

Install-Package Microsoft.Data.Services.Client -Version 5.6.0

and then installed a specific version of WindowsAzure.Storage:

Install-Package WindowsAzure.Storage -Version 2.1.0.4

Found it resolved the issue for me if I added the following to the appropriate project's app.config:

  <dependentAssembly>
    <assemblyIdentity name="Microsoft.Data.Services.Client" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-5.6.3.0" newVersion="5.6.3.0" />
  </dependentAssembly>
  <dependentAssembly>
    <assemblyIdentity name="Microsoft.Data.Edm" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-5.6.3.0" newVersion="5.6.3.0" />
  </dependentAssembly>
  <dependentAssembly>
    <assemblyIdentity name="Microsoft.Data.OData" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-5.6.3.0" newVersion="5.6.3.0" />
  </dependentAssembly>

I simply switched back to WindowsAzure.Storage 3.1.0 and that fixed the problem. There is a problem with the latest version of WindowsAzure.Storage 3.1.0.1

PM> Install-Package WindowsAzure.Storage -Version 3.1.0

将WindowsAzure.Storage升级到v.4.2.0后,此问题已消失

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM