Hi @Rod At Work ,
.NET Core and .NET 5+ versions have only one product version, i.e. there is no separate CLR version, and not every new version of .NET ships with a new version of the CLR. What you see now in IIS Manager is the latest UI with Microsoft explicitly listing the CLR version. What you see now is correct, you only have one choice and that is .NET CLR Version v4.0.30319. Even if you have the .Net 6 Hosting Bundle installed, you won't see .NET 6 as an option in the application pool. 4.x just means "anything since 4.0".
.NET 5 is the next major version of .NET Core after 3.1. This new version is named .NET 5, not .NET Core 4. .NET 6 provides the final part of the .NET Unification initiative, which was launched in .NET 5. Since .NET 5 is based on .NET Core, the application pools we create are not loaded into the .NET Framework runtime environment. All .NET 5+ applications will run by calling an external dotnet process, which is why we need to install a separate hosting package in the first place.
This means that when you create an application pool, you need to set the .NET CLR version to "No Managed Code" because the Core Common Language Runtime (CoreCLR) for .NET Core is booted to host the app in the worker process, not the desktop CLR (.NET CLR). As follows:
If the answer is the right solution, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".
Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the email notification for this thread.
Best regards,
Yurong Dai