Roadmap › Modern .NET — Hosting, Configuration, DI & Deployment › Module: Deployment and Performance
Lessons in this course (9)
9. Migrating from .NET Framework to modern .NET
Advanced★ Must knowLesson 9 of 9
- Inventory: target framework, NuGet packages, use of
System.Web, WCF, Web Forms, AppDomains, Remoting, Windows-only APIs. - Upgrade dependencies to versions that support .NET Standard 2.0 / modern .NET.
- Convert projects to SDK-style
.csproj; move class libraries tonetstandard2.0or multi-target first. - Use .NET Upgrade Assistant (or GitHub Copilot app modernization) to automate conversions.
- ASP.NET MVC/Web API → ASP.NET Core (incrementally with YARP reverse proxy + System.Web adapters — Strangler Fig).
- Replace:
web.configapp settings →appsettings.json+ Options;HttpContext.Current→ injectedIHttpContextAccessor; Global.asax → Program.cs middleware; WCF server → gRPC/REST or CoreWCF; EF6 → EF Core (or keep EF6, which runs on .NET Core 3.1+). - Test thoroughly, benchmark, deploy side by side, switch traffic gradually.