Come impostare la versione .net Framework 4.5 nel pool di applicazioni IIS 7


203

Ho installato Visual Studio 11 Beta e improvvisamente tutti i metodi di azione asincrona che avevo creato sotto l'anteprima dello sviluppatore VS 11 hanno iniziato a bloccarsi (apparentemente questo problema: http://blogs.msdn.com/b/pfxteam/archive/2012/03/ 03 / 10277166.aspx ).

La mia app utilizza v4.0.30319 come versione Framework, ma non è possibile utilizzare 4.5. Ho riparato la mia installazione .net 4.5 per essere sicuro, ma niente. C'è un modo per configurarlo in IIS? Devo distribuire bin i file (e in tal caso quale)?


6
Link all'installazione di .Net 4.5 per i server, nel caso qualcuno si trovi qui a cercarlo: microsoft.com/en-us/download/details.aspx?id=30653
Chris Moschini

2
Programma di installazione offline di .NET Framework 4.5.1: microsoft.com/en-us/download/details.aspx?id=40779
Peter Kiss


1
.NET 4 e .NET 4.5 (inclusi 4.5.1 e 4.5.2) sono nella versione 4.0 di CLR >>> Maggiori dettagli: msdn.microsoft.com/en-us/library/8bs2ecf4(v=vs.110). aspx
VnDevil,

Risposte:


381

Non esiste un pool di applicazioni 4.5. Puoi utilizzare qualsiasi applicazione 4.5 nel pool di app 4.0. .NET 4.5 è "solo" un aggiornamento sul posto, non una nuova versione principale.


Grazie. Ho sospettato altrettanto, anche se non è chiaro il motivo per cui le chiamate asincrone non riescono. Lo inserirò in una domanda diversa.
Gene Reddick,

2
Ho un pool di applicazioni 4.5 in IIS dopo l'installazione di Visual Studio 2012 e 4.5 e Windows 8
Brian Mains

30
Sì, l'Apppool ha il nome ".NET v4.5" ma controlla la colonna della versione di .NET Framework nella schermata IIS - Pool di applicazioni, sarà 4.0. (Ci sono 3 CLR di base: 1.0, 2.0, 4.0.)
Peter Kiss,

Cosa sta succedendo qui? Io non ho 4,5 elencato come una versione quadro eppure questo SO QA dice che c'è un nuovo CLR, contrariamente a Peter stackoverflow.com/questions/8810391/...
Luca Puplett

4
msdn.microsoft.com/en-us/library/bb822049(v=vs.110).aspx - sezione Caratteristiche e IDE; non è un nuovo CLR
Peter Kiss,

35

Vai su "Esegui" ed esegui questo:

%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -ir

NOTA: eseguire come amministratore.


volevo solo dire grazie, così felice di aver finalmente trovato questa soluzione
Jordan Wayne Crabb, l'

La mia app mi ricorda di non trovare .net Framework 4.5 quando provo a eseguirlo con VS 2015. Dopo aver eseguito questo comando, funziona come un incantesimo. Grazie. Ricorda esegui come amministratore su CMD.
Nijat2018,

19

Nella GUI non viene visualizzata la v4.5 e in genere non è necessario specificare manualmente la v4.5 poiché si tratta di un aggiornamento sul posto. Tuttavia, puoi impostarlo esplicitamente con appcmd in questo modo:

appcmd set apppool /apppool.name: [App Pool Name] /managedRuntimeVersion:v4.5

Appcmd si trova in %windir%\System32\inetsrv. Questo mi ha aiutato a risolvere un problema con Web Deploy, dove stava generando un errore ERROR_APPPOOL_VERSION_MISMATCH dopo l'aggiornamento da v4.0 a v4.5.

Articolo MS sull'impostazione della versione .Net per App Pool


1
Quando si installa IIS prima di installare ASP.Net 4.5 o 4.0, è possibile riscontrare una registrazione mancante nella metabase. L'uso di aspnet_regiis può aiutare a ripristinare IIS su tutto il server, ma si noti che aggiornerà tutti i pool di applicazioni alla versione selezionata.
Jan Hebnes,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.