Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Could not load file or assembly ServiceRuntime 2.4.0.0

After upgrading our project to use the Azure SDK 2.5, I get the following runtime exception when deployed to Azure (web role):

Could not load file or assembly 'Microsoft.WindowsAzure.ServiceRuntime, Version=2.4.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

One of the referenced packages from NuGet is still referencing ServiceRuntime 2.4.0.0. From what I understand, all I need to do to fix this is create a bindingRedirect in our web.config:

<dependentAssembly>
    <assemblyIdentity name="Microsoft.WindowsAzure.ServiceRuntime" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
    <bindingRedirect oldVersion="0.0.0.0-2.5.0.0" newVersion="2.5.0.0"/>
</dependentAssembly>

Unfortunately this doesn't work. The exception persists. Can anyone provide guidance?

like image 551
Dave New Avatar asked Mar 18 '15 06:03

Dave New


2 Answers

After upgrading to SDK 2.5 myself i had the same problem you have now. I went trough all of the projects in the solution, and checked all of the references to Microsoft.WindowsAzure.ServiceRuntime. Remove them, and add them again using the Add Reference option. Select the assembly again, however make sure it is the 2.5.0.0 version. Rebuild and redeploy. Things should work again now.

like image 148
dannl Avatar answered Oct 17 '22 11:10

dannl


For me, setting the Copy Local property to True for the referenced assembly fixed this.

  1. In Solution Explorer find your project's reference to the library.
  2. Right click and choose Properties
  3. In the Properties window set Copy Local to True
like image 33
tkburbidge Avatar answered Oct 17 '22 13:10

tkburbidge