Supporten för .NET 8 och .NET 9 upphör den 10 november 2026: så uppgraderar du till .NET 10
Microsoft slutar ge säkerhetsuppdateringar för .NET 8 och .NET 9 den 10 november 2026. Vad det innebär, vad som går sönder och hur du byter till .NET 10 LTS.
Vlado Pandžić · Grundare · Senior .NET-arkitekt
Publicerad · 5 min läsning
Microsoft avslutar supporten för .NET 8 och .NET 9 den 10 november 2026. Från den dagen får ingen av versionerna säkerhetsuppdateringar. Målet för uppgraderingen är .NET 10, en version med långtidssupport (LTS) som stöds fram till november 2028. För de flesta affärsapplikationer tar uppgraderingen dagar, inte månader, om du vet var du ska titta.
Vilka versioner som berörs
| Version | Support | Supporten upphör |
|---|---|---|
| .NET 8 | LTS | 10 november 2026 |
| .NET 9 | STS | 10 november 2026 |
| .NET 10 | LTS | november 2028 |
.NET 9 upphör samma dag som .NET 8 eftersom versioner med standardsupport nu stöds i 24 månader i stället för 18.
Vad det innebär att supporten upphör
Applikationer på .NET 8 och .NET 9 fortsätter att köras efter den 10 november. Det här upphör:
- Säkerhetsuppdateringar. Sårbarheter som hittas efter det datumet förblir öppna i produktion.
- Teknisk support från Microsoft.
- En ren revision. Säkerhetsskannrar flaggar runtimes utan support, och det syns i kundernas säkerhetsenkäter och i certifieringar.
Gå direkt från .NET 8 till .NET 10
Du behöver inte stanna vid .NET 9. Både .NET 8 och .NET 10 är LTS-versioner, och du kan gå direkt. Läs bara igenom de bakåtinkompatibla ändringarna för både .NET 9 och .NET 10.
Checklista för uppgraderingen
-
Installera .NET 10 SDK och en IDE med stöd för den. För att rikta mot
net10.0krävs Visual Studio 2026; Visual Studio 2022 stöder det inte. JetBrains Rider och VS Code fungerar också. -
Uppdatera
global.jsonom lösningen låser en SDK-version. -
Byt target framework i varje projekt, eller en gång i
Directory.Build.props:<PropertyGroup> <TargetFramework>net10.0</TargetFramework> </PropertyGroup> -
Uppdatera Microsofts paket (ASP.NET Core, EF Core,
Microsoft.Extensions.*) till 10.x och kontrollera sedan att varje tredjepartspaket har en version med stöd för .NET 10. -
Bygg och åtgärda varningarna. Föråldrade API:er visas som varningar. Om varningar behandlas som fel ligger det mesta av arbetet här.
-
Kör testerna och kontrollera för hand det som de inte täcker: uppstart, autentisering, bakgrundsjobb och dataåtkomst.
-
Uppdatera pipeline och drift: CI-byggavbildningar, Docker-basavbildningar (
mcr.microsoft.com/dotnet/aspnet:10.0), ASP.NET Core Hosting Bundle på IIS eller runtime-stacken i Azure App Service. -
Driftsätt först i en testmiljö och håll koll på databasen de första timmarna efter produktionssläppet (se EF Core nedan).
Bakåtinkompatibla ändringar att kontrollera först
Microsofts listor är långa. Det här är de ändringar som oftast påverkar affärsapplikationer på webben.
SDK och bygge
dotnet restoregranskar nu även transitiva paket i projekt som riktar mot .NET 10. Kända sårbarheter i dina beroendens beroenden visas som varningar NU1901–NU1904, och om varningar behandlas som fel stoppas bygget. Hitta källan meddotnet nuget whyoch uppdatera paketet i stället för att dölja varningen.
ASP.NET Core 10
- Omdirigeringar till inloggning via cookie är avstängda för kända API-endpoints. I stället för att omdirigera till inloggningssidan returnerar API-endpoints nu 401 eller 403. Bättre för API:er, men kontrollera frontends som förlitade sig på omdirigeringen.
WebHostBuilder,IWebHostochWebHostär föråldrade. EnProgram.csfrån tiden med ASP.NET Core 2 eller 3 bör flyttas till den minimala hostingmodellen.- Razor-kompilering vid körning och
IActionContextAccessorär föråldrade.
Entity Framework Core 10
- Samlingar i frågor som
ids.Contains(x.Id)översätts nu till flera SQL-parametrar i stället för en enda JSON-parameter. Oftast snabbare, men mät frågor som skickar långa listor. - SQL-parametrarnas namn är enklare (
@cityi stället för@__city_0). Nästan varje cachad frågeplan kompileras om efter driftsättningen, så räkna med en kort topp i databasens CPU-belastning. - På Azure SQL (
UseAzureSql) mappar EF nu JSON till den nya kolumntypenjson, och den första migreringen efter uppgraderingen ändrar befintliga JSON-kolumner.
Runtime och containrar
- Standardavbildningarna för containrar använder Ubuntu 24.04 i stället för Debian, och Debian-avbildningar publiceras inte längre. Kontrollera Dockerfiles som installerar systempaket.
BackgroundServicekör helaExecuteAsyncsom en task, så kod före den förstaawaitblockerar inte längre applikationens uppstart.MailAddressavvisar punkter i följd och System.Text.Json kontrollerar krockande egenskapsnamn. Små ändringar som dyker upp som validerings- eller serialiseringsfel.
Hur lång tid det tar
Ungefärliga intervall för en lösning som har tester:
- ett enskilt API eller en tjänst: några timmar till en dag
- en typisk affärsapplikation med databas och frontend: 2 till 5 dagar
- en stor lösning med många projekt, gamla beroenden eller ett eget byggsystem: 1 till 3 veckor
Själva ramverket är sällan det som tar tid. Det gör tredjepartspaket utan en version för .NET 10 och tester som saknas.
Fortfarande på .NET Framework?
Då gäller inte den 10 november dig, men ett större beslut gör det. .NET Framework 4.8 får fortfarande säkerhetsuppdateringar, men inga nya funktioner, och ASP.NET Web Forms har ingen uppgraderingsväg till modern .NET. Så flyttar vi Web Forms till Blazor, skärm för skärm, medan den gamla applikationen fortsätter att köras.
Så arbetar vi
ProCoding är en .NET-studio från Split i Kroatien, och att uppgradera .NET-applikationer är något av det vi gör oftast. Vi går igenom din lösning, listar vad som ändras i .NET 10 och vad som kan gå sönder, uppskattar arbetsinsatsen och genomför uppgraderingen, på egen hand eller tillsammans med ditt team. Det första steget är ett kostnadsfritt samtal på 30 minuter.
Källor
- .NET 8 and .NET 9 will reach End of Support on November 10, 2026, .NET Blog
- Bakåtkompatibilitetsbrytande ändringar i .NET 10, Microsoft Learn
- Bakåtkompatibilitetsbrytande ändringar i ASP.NET Core 10, Microsoft Learn
- Bakåtkompatibilitetsbrytande ändringar i EF Core 10, Microsoft Learn
- Targeting .NET 10 in Visual Studio 2022 is not supported, dotnet/sdk på GitHub
Den här artikeln är endast allmän information och inte juridisk, skattemässig, ekonomisk eller annan professionell rådgivning. Scenarier, exempel och beräkningar är illustrativa. Användarvillkor och ansvarsfriskrivning.