13

Dopo l'aggiornamento il nostro progetto di utilizzare l'Azure SDK 2.5, ottengo la seguente eccezione di runtime quando schierato a Azure (ruolo web):Impossibile caricare il file o il montaggio ServiceRuntime 2.4.0.0

Impossibile caricare il file o assembly 'Microsoft.WindowsAzure.ServiceRuntime, Versione = 2.4.0.0, Culture = neutro, PublicKeyToken = 31bf3856ad364e35' o una delle sue dipendenze . Il sistema non trova il file specificato.

Uno dei pacchetti di riferimento di NuGet fa ancora riferimento a ServiceRuntime 2.4.0.0. Da quello che ho capito, tutto quello che ho bisogno di fare per risolvere questo problema è creare un bindingRedirect nel nostro 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> 

Purtroppo questo non funziona. L'eccezione persiste. Qualcuno può fornire una guida?

risposta

12

Dopo l'aggiornamento a SDK 2.5, ho avuto lo stesso problema che hai ora. Sono andato attraverso tutti i progetti nella soluzione e ho controllato tutti i riferimenti a Microsoft.WindowsAzure.ServiceRuntime. Rimuovili e aggiungili di nuovo usando l'opzione Aggiungi riferimento. Seleziona di nuovo l'assembly, ma assicurati che sia la versione 2.5.0.0. Ricostruisci e ridistribuisci. Le cose dovrebbero funzionare di nuovo ora.

1

Per me, l'impostazione della proprietà Copia locale su Vero per l'assembly di riferimento ha risolto questo problema.

  1. In Esplora soluzioni individuare il riferimento del progetto alla libreria.
  2. Fare clic destro e selezionare Proprietà
  3. Nella finestra Proprietà impostare copia locale su True