~/talk

Tales From the .NET 7 Migration Trenches

Talkat DevConf 2023 · 2023-11-08..11-10· [dotnet, legacy-modernisation]
slides:none on file

A migration of a .NET 4.8 MVC app to .NET 7 happens incrementally: create an empty host that proxies into the old app, then move controllers one file at a time until the old app has no pages. Uses System.Web.Adapters plus a self‑hosted YARP reverse proxy, Upgrade Assistant for scaffolding, WebOptimizer for bundles, and multi‑targeted shared libraries so EF6 and business logic run on both runtimes. Sample inventory: 6 controllers, 58 actions (account controller has 22); delete migrated controllers to surface errors early.

AI-written summary · about

  1. 0:00Introduction
  2. 1:12Why migrate from .NET Framework
  3. 2:34Incremental migration strategy
  4. 5:22Cataloging the application
  5. 7:28Inventory of controllers
  6. 9:36Analyzing middleware
  7. 11:43Legacy components review
  8. 14:31Dependency migration paths
  9. 16:16System.Web Adapters setup
  10. 19:52Demo of migration tool
  11. 23:00Running the proxy in production
  12. 28:24Preparing shared libraries
  13. 31:55Migrating first controller
  14. 33:00Manual migration challenges
  15. 35:50Unsupported ASP.NET features
  16. 36:56Dependency injection changes
  17. 39:01Bundling and minification
  18. 41:51Dual bundling pipelines
  19. 43:16Controller migration process
  20. 44:40Session state handling
  21. 48:30Authentication migration
  22. 50:37Final cleanup steps
  23. 51:20Key migration takeaways
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.