Why does my newly created .NET 8 azure function use dotnet, while upgraded ones use dotnet-isolated?

Brendan Finnegan 46 Reputation points
2024-07-03T21:23:52.92+00:00

Hello all,

I recently migrated a few azure functions from .NET 6.0 to .NET 8.0, mostly using the in place Visual Studio 2022 upgrade process. One of the last steps after upgrading is to update your local.settings.json to this

"FUNCTIONS_WORKER_RUNTIME": "dotnet-isolated"

This all works great and I haven't had any problems with my functions that went from .NET 6.0 to .NET 8.0. It even worked for .NET CORE 2.0 -> .NET 8.0.

Now when I create a brand new .NET 8.0 Azure function in Visual Studio 2022, the local.settings.json defaults to the value below.

"FUNCTIONS_WORKER_RUNTIME": "dotnet", 

Why is there a difference here? The newly created .NET 8.0 Azure function doesn't create with a program.cs or recognize the one I added upon startup

Many of the nuget packages, dependency injections, and bindings are completely different between the upgraded .NET 6.0 apps, and the brand new .NET 8.0. Because of this, it feels like I'm setting up a completely different app.

Azure Functions
Azure Functions
An Azure service that provides an event-driven serverless compute platform.
4,561 questions
.NET
.NET
Microsoft Technologies based on the .NET software framework.
3,569 questions
0 comments No comments
{count} votes