So legen Sie die .net Framework 4.5-Version im IIS 7-Anwendungspool fest

203

Ich habe Visual Studio 11 Beta installiert und plötzlich hingen alle asynchronen Aktionsmethoden, die ich unter der VS 11 Developer-Vorschau erstellt hatte, zu hängen (anscheinend dieses Problem: http://blogs.msdn.com/b/pfxteam/archive/2012/03/ 03 / 10277166.aspx ).

Meine App verwendet v4.0.30319 als Framework-Version, es gibt jedoch keine Option zur Verwendung von 4.5. Ich habe meine .net 4.5-Installation zwar repariert, aber nichts. Gibt es eine Möglichkeit, dies in IIS zu konfigurieren? Muss ich die Dateien bin bereitstellen (und wenn ja welche)?

Gene Reddick
quelle
6
Link zur .Net 4.5-Installation für Server, falls jemand hier landet und danach sucht: microsoft.com/en-us/download/details.aspx?id=30653
Chris Moschini
2
Offline-Installationsprogramm für .NET Framework 4.5.1: microsoft.com/en-us/download/details.aspx?id=40779
Peter Kiss
1
.NET 4 und .NET 4.5 (einschließlich 4.5.1 und 4.5.2) befinden sich in der CLR-Version 4.0 >>> Weitere Details: msdn.microsoft.com/en-us/library/8bs2ecf4(v=vs.110). aspx
VnDevil

Antworten:

381

Es gibt keinen 4.5-Anwendungspool. Sie können jede 4.5-Anwendung im 4.0-App-Pool verwenden. Das .NET 4.5 ist "nur" ein In-Place-Update, keine wichtige neue Version.

Peter Kiss
quelle
Vielen Dank. Ich vermutete dies, obwohl unklar war, warum die asynchronen Anrufe fehlschlagen. Ich werde das in eine andere Frage stellen.
Gene Reddick
2
Ich habe einen 4.5 Anwendungspool in IIS nach der Installation von Visual Studio 2012 und 4.5 und Windows 8
Brian Mains
30
Ja, der Apppool hat den Namen ".NET v4.5". Überprüfen Sie jedoch die Spalte ".NET Framework-Version" im Bildschirm "IIS - Anwendungspools". Es wird 4.0 angezeigt. (Es gibt 3 Basis CLR: 1.0, 2.0, 4.0.)
Peter Kiss
Was ist denn hier los? Ich habe noch keine 4.5 als Framework-Version aufgeführt. Diese SO QA sagt, dass es eine neue CLR gibt, im Gegensatz zu Peter stackoverflow.com/questions/8810391/…
Luke Puplett
4
msdn.microsoft.com/en-us/library/bb822049(v=vs.110).aspx - Abschnitt Funktionen und IDE; Es ist keine neue CLR
Peter Kiss
35

Gehen Sie zu "Ausführen" und führen Sie Folgendes aus:

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

HINWEIS: Als Administrator ausführen.

Vitor Sousa
quelle
Ich wollte mich nur
Jordan Wayne Crabb
Meine App erinnert mich daran, dass ich .net Framework 4.5 nicht gefunden habe, wenn ich versuche, es mit VS 2015 auszuführen. Nachdem Sie diesen Befehl ausgeführt haben, funktioniert es wie ein Zauber. Danke dir. Denken Sie daran, als Administrator auf CMD ausgeführt zu werden.
Nijat2018
19

In der Benutzeroberfläche wird keine Version 4.5 angezeigt, und normalerweise müssen Sie Version 4.5 nicht manuell angeben, da es sich um ein direktes Update handelt. Sie können es jedoch explizit mit appcmd wie folgt einstellen:

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

Appcmd befindet sich in %windir%\System32\inetsrv. Dies hat mir geholfen, ein Problem mit Web Deploy zu beheben, bei dem nach dem Upgrade von v4.0 auf v4.5 ein ERROR_APPPOOL_VERSION_MISMATCH-Fehler ausgelöst wurde.

MS-Artikel zum Festlegen der .NET-Version für den App-Pool

Walter
quelle
1
Bei der Installation von IIS vor der Installation von ASP.Net 4.5 oder 4.0 kann eine fehlende Registrierung in der Metabasis auftreten. Die Verwendung von aspnet_regiis kann zum Zurücksetzen des IIS-Servers beitragen. Beachten Sie jedoch, dass alle Anwendungspools auf die ausgewählte Version aktualisiert werden.
Jan Hebnes