2012-06-23 9 views
9

Avevo un progetto attivo e funzionante con l'SDK di novembre 2011 e recentemente aggiornato all'SDK di giugno 2012. Quando ho visto per la prima volta l'errore, ho tentato l'ovvio: rimuovere i riferimenti e aggiungere le versioni successive, ma ciò non ha aiutato. In qualche modo sembra che la versione 1.0.0.0 sia ancora richiesta. Ho anche provato a rimuovere il riferimento e ad aggiungere la vecchia versione, ma senza fortuna.Eccezione dopo l'aggiornamento a giugno 2012 SDK

Ecco come si presenta nel mio codice. La prima Trace.WriteLine che colpisce oggi riporta la seguente eccezione:

System.IO.FileLoadException è stata gestita dal codice utente Messaggio = Potrebbe non caricare il file o l'assembly 'Microsoft.WindowsAzure.Diagnostics, Version = 1.0. 0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35 'o una delle sue dipendenze. La definizione di manifesti manifest dell'assembly individuato non corrisponde al riferimento all'assembly. (Eccezione da HRESULT: 0x80131040) Fonte = mscorlib
FileName = Microsoft.WindowsAzure.Diagnostics, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35 FusionLog ==== Pre-bind informazioni sullo stato === LOG : User = NT AUTHORITY \ NETWORK LOG SERVIZIO: DisplayName = Microsoft.WindowsAzure.Diagnostics, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35 (Fully-specificato) LOG: AppBase = file: /// F :/SVNProjects/myproject/SitePagesWebRole/LOG: Initial PrivatePath = F: \ SVNProjects \ myproject \ SitePagesWebRole \ bin Chiamata all'assembly : (Sconosciuto). === LOG: questo binding inizia nel contesto di caricamento predefinito. LOG: utilizzando il file di configurazione dell'applicazione: F: \ SVNProjects \ myproject \ SitePagesWebRole \ web.config LOG: utilizzando il file di configurazione dell'host : C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ aspnet.config LOG: Utilizzo del file di configurazione macchina da C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ config \ machine.config. LOG: di riferimento post-politica: Microsoft.WindowsAzure.Diagnostics, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35 LOG: Cercando download del nuovo file URL : /// C: /Windows/Microsoft.NET /Framework64/v4.0.30319/Temporary ASP.NET File/root/b117acb8/f2404402/Microsoft.WindowsAzure.Diagnostics.DLL. LOG: Cercando download del nuovo file URL : /// C: /Windows/Microsoft.NET/Framework64/v4.0.30319/Temporary ASP.NET file/root/b117acb8/f2404402/Microsoft.WindowsAzure.Diagnostics/Microsoft .WindowsAzure.Diagnostics.DLL. LOG: Tentativo di download del nuovo URL file: /// F: /SVNProjects/myproject/SitePagesWebRole/bin/Microsoft.WindowsAzure.Diagnostics.DLL. WRN: il confronto tra il nome dell'assembly ha provocato la mancata corrispondenza: Minore ERR versione: impossibile completare l'installazione dell'assembly (hr = 0x80131040). Probing terminato.

StackTrace: a System.RuntimeTypeHandle.GetTypeByName (nome String, Boolean throwOnError, booleano ignoreCase, booleano reflectionOnly, StackCrawlMarkHandle stackMark, booleano loadTypeFromPartialName, tipo ObjectHandleOnStack) a System.RuntimeTypeHandle.GetTypeByName (nome String, Boolean throwOnError , Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMark & stackMark, booleano loadTypeFromPartialName) in System.Type.GetType (String typeName) in System.Diagnostics.TraceUtils.GetRuntimeObject (String className, Tipo BaseType, String initializeData) a System.Diagnostics.TypedElement.BaseGetRuntimeObject() a System.Diagnostics.ListenerElement.GetRuntimeObject() a System.Diagnostics.ListenerElementsCollection.GetRuntimeObject() a System.Diagnostics. TraceInternal.get_Listeners() in System.Diagnostics.TraceInternal.WriteLine (messaggio String) in myproject.GameAPI.Login (Int64 fbid, Int64 [] friends) in F: \ SVNProjects \ myproject \ GameLogic \ GameAPI.cs: riga 119
InnerException:

Come può risolvere il problema?

risposta

14

Controllare web.config/app.config per tutti i ruoli. Assicurarsi che si modifica il numero di versione per ogni riferimento al gruppo Microsoft.WindowsAzure.Diagnostics alla versione 1.7.0.0

+0

E 'stato. Non mi aspettavo di avere informazioni sulla versione in un file di configurazione poiché devi aggiungere riferimenti. –

2

Tutti i riferimenti di assiemi blu nei progetti di ruolo web/worker devono puntare alle versioni 1.7.0.0. I file ccproj devono contenere

<ProductVersion>1.7</ProductVersion> 

per garantire che le istanze di Azure contengano gli assembly di base appropriati.

È anche possibile verificare se Microsoft.WindowsAzure.Diagnostics viene copiato nel pacchetto di output/azzurro.

1

È possibile che questo non ha funzionato per me (ho guardato ovunque dire 1.7), invece sono andato attraverso ogni progetto, rimosso e aggiunto qualsiasi riferimento iniziato con:

Microsoft.WindowsAzure.* 

Quando si aggiungono nuovamente, assicurarsi che sia presente la versione 1.7.

Problemi correlati