Korrekte .Net-Version kann im IIS-Serverpool nicht eingestellt werden

Korrekte .Net-Version kann im IIS-Serverpool nicht eingestellt werden

Ich versuche, eine .Net-basierte RestAPI einzurichten, die auf einem Windows-Server mit IIS gehostet werden soll. Aber aus irgendeinem Grund gelingt es mir nicht, meinen Pool so zu konfigurieren, dass er funktioniert.

Hier finden Sie die Beschreibung des Anbieters zur Vorgehensweise.WindWard-Dokumente

Darin heißt es:

Klicken Sie auf die Schaltfläche „Auswählen…“ neben dem Textfeld „Anwendungspool“. Klicken Sie auf die Dropdown-Liste und wählen Sie eine der Optionen aus:

ASP.NET v4.0 .NET 4.5 oder .NET 4.0 (Obwohl Sie möglicherweise nur .NET 4.0 oder .NET 4.5 sehen, wenn Sie .NET 4.5.1 installiert haben, funktionieren beide Optionen.) Und ich sollte diese Option sehen Bildbeschreibung hier eingeben

Aber egal welche Version ich installiere, 2012R2, 2016 oder 2019, ich sehe das nie, ich bekomme immer die folgende Option, also bin ich mir nicht sicher, was ich hier übersehe

Bildbeschreibung hier eingeben

Antwort1

Es gab eigentlich (*) nur zwei .NET-Versionen: 2.0 und 4.0.

3.0 und 3.5 sind lediglich Ergänzungen zu 2.0.

4.5, 4.7, 4.8 sind lediglich Ergänzungen zu 4.0.

Und ja, die IIS-Benutzeroberfläche ist noch verwirrender.

Wie dem auch sei, 4.x bedeutet einfach „alles ab 4.0“. Wählen Sie einfach eine beliebige 4.x-Laufzeit aus, dann sollte alles gut gehen.


(*) Es hatnoch schlimmerspäter.

Antwort2

Als Microsoft IIS 7 ursprünglich entwickelte, ging man davon aus, dass die CLR-Versionen den .NET Framework-Versionen entsprechen würden, sodass ein Anwendungspool über die Versionen 1.0, 1.1 oder 2.0 des .NET Frameworks verfügen könne.

Die Einführung von .NET Framework 3.0/3.5 hat jedoch gegen diese Regel verstoßen, da diese noch auf CLR 2.0 basierten. Ebenso verwenden alle .NET Framework 4.x-Versionen CLR 4.0. Daher war die alte Benutzeroberfläche, die Sie in diesem WindWard-Artikel gesehen haben, leider verwirrend. Sie können viele Stack Overflow/ServerFault-Threads mit ähnlichem Hintergrund finden.

Was Sie jetzt im IIS-Manager sehen, ist die neueste Benutzeroberfläche (es ist nicht leicht, sich daran zu erinnern, wann sie erstmals eingeführt wurde, vielleicht IIS 10), in der Microsoft CLR-Versionen explizit auflistet. Es kann für Anfänger immer noch schwer zu verstehen sein, da nicht alle .NET-Entwickler die CLR-Konzepte im Detail kennen, aber es ist zumindest weniger verwirrend.

verwandte Informationen