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.