Migratie van .NET Framework naar .NET 10: hoeveel werk het is en hoe u begint

Uw .NET Framework 4.x-app werkt, maar niemand durft eraan? Is .NET 10 dringend, wat gaat makkelijk over, wat niet, en hoe begint u zonder stilstand?

Vlado Pandžić

Vlado Pandžić · Oprichter · Senior .NET-architect
Gepubliceerd · 4 min lezen

De applicatie op .NET Framework 4.x draait al tien jaar. Het bedrijf draait erop, klanten gebruiken hem en niemand wil eraan komen. Dan komen er een paar dingen tegelijk samen: een nieuwe bibliotheek die u nodig hebt, ondersteunt het Framework niet meer, een goede kandidaat zegt nee als hij hoort waaraan hij zou werken, en de hosting kan niet naar containers of naar Linux.

Op dat moment is de overstap naar modern .NET geen vraag meer van of, maar van hoe en in welke volgorde.

Is het dringend?

Eerlijk gezegd: het is geen brand. .NET Framework 4.8.1 is de laatste versie, en Microsoft ondersteunt het zolang het draait op een ondersteunde versie van Windows, zonder aangekondigde einddatum. Beveiligingsupdates blijven komen.

Maar het is een doodlopende weg. Nieuwe functies, performance en bibliotheken komen alleen nog naar modern .NET, en .NET 10 is een versie met langetermijnondersteuning tot november 2028. Elk jaar op het Framework betekent meer code die later over moet, en minder mensen die hem willen onderhouden. Het goedkoopste moment om over te stappen is voordat iets u ertoe dwingt.

Wat makkelijk overgaat, en wat niet

Deel van de applicatie Hoe moeilijk Hoe
Bibliotheken met bedrijfslogica Makkelijk De meeste code werkt ongewijzigd, met het nieuwe projectformaat
Entity Framework 6 Makkelijk Draait ook op modern .NET, de overstap naar EF Core kan later
Windows Forms en WPF Gemiddeld Ze gaan over, maar blijven applicaties voor alleen Windows
ASP.NET MVC en Web API Gemiddeld Controllers lijken op elkaar, opstarten, filters en inloggen veranderen
WCF-clients Gemiddeld Er zijn clientpakketten voor modern .NET
WCF-services Moeilijker CoreWCF, of overstappen op REST of gRPC
Web Forms Het moeilijkst Bestaat niet in modern .NET, dus schermen worden opnieuw gebouwd, bijvoorbeeld in Blazor
AppDomains, Remoting, Code Access Security Het moeilijkst Bestaan niet, dus dat deel moet anders worden ontworpen

De meeste bedrijfsapplicaties hebben iets uit elke regel, dus een echte schatting is altijd de som van de delen. De tabel laat ook zien waar het meeste werk zit: in de weblaag en de oude technologieën, niet in de bedrijfslogica.

Hoe u begint

  1. InventarisatieProjecten, pakketten, afhankelijkheden
  2. BibliothekenVan onder naar boven, voor beide werelden
  3. WeblaagEen nieuwe app voor de oude
  4. UitzettenHet oude deel verdwijnt
  1. Inventarisatie. Alle projecten, NuGet-pakketten en afhankelijkheden, met de onderdelen uit de onderste regels van de tabel gemarkeerd. De moderniseringstool van Microsoft in GitHub Copilot helpt vinden wat niet compileert, maar de beslissingen over de volgorde neemt nog steeds een mens.

  2. Bibliotheken, van onder naar boven. Eerst de projecten waarvan niets afhangt, dan de projecten daarboven. Elke bibliotheek gaat eerst naar het nieuwe projectformaat en wordt dan voor beide werelden tegelijk gebouwd. Zo blijft de oude applicatie werken, terwijl nieuwe code al dezelfde bibliotheken gebruikt:

    <PropertyGroup>
      <TargetFrameworks>net48;net10.0</TargetFrameworks>   <!-- dezelfde bibliotheek voor de oude en de nieuwe app -->
    </PropertyGroup>

    Wat in modern .NET ontbreekt en alleen op Windows wordt gebruikt, wordt vaak gedekt door het Windows Compatibility Pack van Microsoft, met zo’n twintigduizend API’s.

  3. De weblaag, stukje bij beetje. Een nieuwe ASP.NET Core-applicatie staat voor de oude en neemt één route tegelijk over, en stuurt al het andere door naar de oude app. Gebruikers merken de overstap niet, inloggen en sessie worden gedeeld, en er is geen grote dag waarop alles tegelijk verandert. Voor Web Forms is het dezelfde aanpak die we beschrijven op de pagina over de overstap van Web Forms naar Blazor.

  4. Uitzetten. Als de laatste route over is, gaat de oude applicatie uit, en kunnen de bibliotheken het oude doel net48 laten vallen.

Hoeveel werk het is

Het hangt bijna volledig af van de weblaag en de onderste regels van de tabel. Bibliotheken met bedrijfslogica zijn vaak een kwestie van dagen of weken. Een kleinere ASP.NET MVC-applicatie is meestal een kwestie van weken, en een grote Web Forms-applicatie of een systeem op WCF-services een kwestie van maanden, maar ook dan stukje bij beetje, terwijl de applicatie de hele tijd draait.

De duurste aanpak is alles opnieuw schrijven vanaf nul en het oude systeem ernaast onderhouden. Waarom opnieuw beginnen vanaf nul zelden lukt, staat in het artikel over technische schuld.

Hoe wij werken

ProCoding is een .NET-studio uit Split, Kroatië, en het moderniseren van oude .NET-systemen is een van de dingen die we het vaakst doen. We beginnen met een inschatting: een inventarisatie van projecten en afhankelijkheden, wat makkelijk overgaat, wat herwerkt moet worden en in welke volgorde, met een globale inspanning per onderdeel. De eerste stap is een gratis gesprek van 30 minuten.

Bronnen

Dit artikel is alleen algemene informatie en geen juridisch, fiscaal, financieel of ander professioneel advies. Scenario’s, voorbeelden en berekeningen zijn ter illustratie. Gebruiksvoorwaarden en disclaimer.

Gerelateerde artikelen

© 2026 ProCoding — Alle rechten voorbehouden.Colofon en privacyDisclaimerSplit, Kroatië