Your definitive guide to
moving from .NET Framework
to .NET 8 and beyond

  • plan and estimate
  • modernize incrementally
  • enjoy the benefits
Get your copy

Practical Examples

The book is full of practical examples, showing the individual steps of the modernization process. You will find out how to migrate WCF or ASP.NET Web Services, what to do with old versions of Entity Framework, and how to move away from Forms Authentication to ASP.NET Core Identity.

Best Practices

In various places of the book, you will find examples and explanations on how to incrementally improve the code quality and fight with technical debt. One chapter is dedicated on improving the architecture, introducing tests, and separating business logic from the presentation layer concerns.

Broader Context

The book describes the modernization on a broader context – it does not focus just on the libraries and necessary code changes.

You will learn how to plan the entire process, how to make estimates or experiments to find the best approach, or how to communicate the benefits and risks to your managers.

Chapters

01 Introduction

  • What has changed with .NET Core and .NET?
  • What are my options when using ASP.NET Web Forms or MVC?
  • How long will the old .NET Framework be supported?

02 Justifying the Modernization

  • What will I gain when using the new .NET?
  • Is it really that faster?
  • How do I explain the benefits to my manager?

03 Before You Start

  • How to prepare for the modernization of your app?
  • How to estimate the effort needed?
  • Is it worth to do refactoring during the process?

04 Migrating APIs and Web Services

  • How to migrate ASP.NET XML Web Services?
  • Shall I try CoreWCF or migrate to gRPC?
  • What has changed between ASP.NET SignalR and ASP.NET Core SignalR?

05 Migrating Data Access

  • Is ADO.NET different in the new .NET?
  • Does it make sense to migrate from Entity Framework to EF Core?
  • How can I keep using Entity Framework 6?

06 Migrating Identity Stores

  • What to do with the old Forms Authentication?
  • How different is ASP.NET Identity to Core Identity?
  • How to migrate users and roles to the new schema?

07 In-Place Migration of Web UI Applications

  • Do I have to rewrite ASP.NET Web Forms apps completely?
  • How can I use DotVVM to modernize the app in-place?
  • How to retain most of the code with just minimal changes?

08 Side-by-Side Migration of UI Applications

  • How to use YARP to modernize ASP.NET Web Forms application to Blazor?
  • What challenges await you when suddenly running two applications?
  • How SystemWebAdapters help with sharing authentication and session?

09 Migration of ASP.NET MVC and Web Pages

  • How to use the side-by-side modernization when moving ASP.NET MVC application to Razor Pages?
  • What are the new features of Razor in the new .NET?
  • How to deal with cache invalidation, concurrency, and other issues in the two applications scenario?

10 A Word on Architecture

  • What is the problem with accessing the database from controller methods?
  • How to separate presentation concerns from business logic and data access code?
  • What kinds of tests you can introduce to cover the most critical features?

What You Will Learn

  • Discover the changes you need to make in a legacy ASP.NET application to migrate it to .NET 8 and beyond
  • Estimate the required effort and prepare the entire process
  • Use the In-place or Side-by-side approach to modernize your application incrementally
  • Migrate from ASP.NET Web Services or WCF to REST or gRPC
  • Migrate from ASP.NET SignalR to SignalR Core or from Entity Framework to EF Core
  • Migrate from Forms Authentication to ASP.NET Identity
  • Migrate ASP.NET Web Forms to Blazor Server or DotVVM
  • Migrate ASP.NET MVC and Web Pages to ASP.NET Core MVC and Razor Pages
  • Refactor and clean up your codebase to make it more maintainable

Chapters

01 Introduction

  • What has changed with .NET Core and .NET?
  • What are my options when using ASP.NET Web Forms or MVC?
  • How long will the old .NET Framework be supported?

02 Justifying the Modernization

  • What will I gain when using the new .NET?
  • Is it really that faster?
  • How do I explain the benefits to my manager?

03 Before You Start

  • How to prepare for the modernization of your app?
  • How to estimate the effort needed?
  • Is it worth to do refactoring during the process?

04 Migrating APIs and Web Services

  • How to migrate ASP.NET XML Web Services?
  • Shall I try CoreWCF or migrate to gRPC?
  • What has changed between ASP.NET SignalR and ASP.NET Core SignalR?

05 Migrating Data Access

  • Is ADO.NET different in the new .NET?
  • Does it make sense to migrate from Entity Framework to EF Core?
  • How can I keep using Entity Framework 6?

06 Migrating Identity Stores

  • What to do with the old Forms Authentication?
  • How different is ASP.NET Identity to Core Identity?
  • How to migrate users and roles to the new schema?

07 In-Place Migration of Web UI Applications

  • Do I have to rewrite ASP.NET Web Forms apps completely?
  • How can I use DotVVM to modernize the app in-place?
  • How to retain most of the code with just minimal changes?

08 Side-by-Side Migration of UI Applications

  • How to use YARP to modernize ASP.NET Web Forms application to Blazor?
  • What challenges await you when suddenly running two applications?
  • How SystemWebAdapters help with sharing authentication and session?

09 Migration of ASP.NET MVC and Web Pages

  • How to use the side-by-side modernization when moving ASP.NET MVC application to Razor Pages?
  • What are the new features of Razor in the new .NET?
  • How to deal with cache invalidation, concurrency, and other issues in the two applications scenario?

10 A Word on Architecture

  • What is the problem with accessing the database from controller methods?
  • How to separate presentation concerns from business logic and data access code?
  • What kinds of tests you can introduce to cover the most critical features?

What You Will Learn

  • Discover the changes you need to make in a legacy ASP.NET application to migrate it to .NET 8 and beyond
  • Estimate the required effort and prepare the entire process
  • Use the In-place or Side-by-side approach to modernize your application incrementally
  • Migrate from ASP.NET Web Services or WCF to REST or gRPC
  • Migrate from ASP.NET SignalR to SignalR Core or from Entity Framework to EF Core
  • Migrate from Forms Authentication to ASP.NET Identity
  • Migrate ASP.NET Web Forms to Blazor Server or DotVVM
  • Migrate ASP.NET MVC and Web Pages to ASP.NET Core MVC and Razor Pages
  • Refactor and clean up your codebase to make it more maintainable

Technologies covered

Old

Data Access Libraries

  • ADO.NET
  • LINQ to SQL
  • Entity Framework 4 – 6

Communication Frameworks

  • ASP.NET XML Web Services
  • WCF
  • ASP.NET Web API
  • ASP.NET SignalR

Identity & Authentication

  • ASP.NET Membership Providers
  • ASP.NET Universal Providers
  • ASP.NET Identity
  • Forms Authentication

Web Frameworks

  • ASP.NET Web Forms
  • ASP.NET MVC
  • ASP.NET Web Pages

New

Data Access Libraries

  • Entity Framework Core

Communication Frameworks

  • SoapCore
  • CoreWCF
  • ASP.NET Core API
  • ASP.NET Core gRPC
  • ASP.NET SignalR Core

Identity & Authentication

  • ASP.NET Core Identity
  • ASP.NET Core Authentication

Web Frameworks

  • Blazor
  • DotVVM
  • Razor Pages

About the author

Tomáš Herceg lives in the Czech Republic, and has been a Microsoft MVP since 2009. He runs a software consulting company called RIGANTI, and he has founded DotVVM, an open-source framework for building web apps using a popular MVVM design pattern. He often speaks at conferences and user groups, and he is the founder of Update Conference, the largest .NET developer event in the Czech Republic.

Tomas spent a large part of his career helping his customers with technical decisions, such as cloud migration, microservices architecture, domain-driven design, and modernization of large legacy applications. He wrote many technical articles about .NET development and conducted numerous courses and hands-on labs. Writing this book seemed like the next step forward.

Get your copy

Keep up with the news

Stay connected with the author! Sign up for updates, insights, and the latest news on modernizing .NET applications and related topics.

Subscribe at LinkedIn