Migrating: ASP.NET Web APIs to ASP.NET Core

A step-by-step process to migrate ASP.NET Web APIs from .NET Framework to ASP.NET Core.

.NET has been a staple in the development world for over twenty years. With the advent of .NET Core (now simply referred to as .NET), many existing .NET codebases are outdated and no longer supported. Numerous organizations find themselves stuck on older .NET Framework versions, and the need to transition to the modern ASP.NET Core has become essential. However, this migration can often feel daunting. In this course, Jonathan "J" Tower will guide you through the entire process of migrating ASP.NET Web APIs to ASP.NET Core. Drawing from his extensive experience assisting hundreds of companies with their migrations, J will equip you with the necessary skills to successfully update your Web API solutions to the latest ASP.NET Core framework.

Curriculum

Welcome (02:17)

What will you learn in this course? (03:23)

Who is the course for and prerequisites (02:29)

Installing the required software (05:03)

Why Upgrade to ASP.NET Core (05:47)

Migration Strategies: Big Bang vs. Incremental approaches (03:07)

Strangler Fig Approach (03:09)

Stages of the upgrade process (01:55)

Introduction to reverse proxies & YARP (06:26)

ASP.NET Core Architecture Overview (05:13)

The Startup Class and Program.cs (02:31)

Middleware Pipeline vs HttpModules/Handlers (04:58)

Built-In Dependency Injection (02:48)

Configuration System Changes (04:35)

Hosting and Environment Management (01:16)

Routing and Binding (04:12)

Authentication and Authorization (01:57)

ApiController Attribute (07:10)

Serialization & Content Negotiation (04:18)

What is .NET Upgrade Assistant (01:49)

Supported Upgrade Projects and Paths (02:14)

Installing .NET Upgrade Assistant (05:07)

Analyze Your Projects (10:11)

Upgrades Using the dotnet CLI (06:58)

In-Place, Side-by-Side, and Side-by-Side Incremental Upgrades (07:42)

NuGet and Project File Upgrades (02:59)

Sample Application Review (08:46)

Upgrade Strategy Planning (04:33)

Introduction to .NET Standard (03:05)

Migrate a Class Library to .NET Standard (09:19)

Differences from Entity Framework 6 to Entity Framework Core (13:17)

EF6 to EF Core Migration Recommendations (02:11)

Dapper and ADO.NET (01:40)

Side-by-Side Incremental MVC Migration Setup (13:32)

Fix Swagger (02:21)

Migrating a Web API Controller and Fixing EF6 (14:46)

Check Migration Progress (03:00)

Change Swagger Setup for 2 APIs (08:50)

Reverse-Engineer EF Core (07:40)

Introduction to Minimal APIs (04:49)

Migrate to a Controller First (08:25)

Migrating Existing Controller Endpoints to Minimal API (07:23)

Organizing Minimal API Endpoints (07:52)

Review of Token-Based Authentication (07:44)

Sharing Tokens between Legacy and Modern App (06:20)

Securing Minimal APIs (05:36)

Proxying Requests to Legacy Endpoints with YARP (05:51)

Supporting Legacy Media Types (07:39)

Easier Minimal API Media Type Support (08:44)

Leveraging ProblemDetails for Standardized Error Responses (04:29)

Enabling Output Caching, Compression, and Rate Limiting (09:43)

Migrating WCF Projects (03:35)

Conclusion (03:49)

Course Info

Level:
Migrating
Duration:
4h 46m
Rating (New):
star

Lifetime access

Dometrain Pro

Want access to all of our courses? Subscribe to Dometrain Pro!

Try it for free!

About the Author

author_img

Jonathan Tower

Jonathan, or J as he's known to friends, is a husband, a father, and the owner of Trailhead Technology Partners, a custom software consulting company with employees all around the world. He is also a Microsoft MVP in .NET and frequently speaks at software meetups and conferences. He doesn't mind too much because he loves sharing what he’s learned, and it also gives him an excuse to visit any nearby National Parks, a passion of his, proven by the fact that he's currently made it to 52 of the 63 parks. J also has a passion for building community and has served on several non-profit boards over the years as a result. Currently, J sits on the SoftwareGR board, a non-profit trade organization dedicated to building the software industry in West Michigan. He also runs Beer City Code, a software conference, and has served as president on that board for over a decade. J loves hiking, reading, photography, and trying to see all the best picture nominees before the Oscars ceremony.

More courses by Jonathan Tower

What's New

Migrating: ASP.NET Web APIs to ASP.NET Core
course

Migrating: ASP.NET Web APIs to ASP.NET Core

A step-by-step process to migrate ASP.NET Web APIs from .NET Framework to ASP.NET Core.

Learn More
Getting Started: Caching in .NET
course

Getting Started: Caching in .NET

Let's make the hardest thing in programming easy for .NET software engineers.

Learn More
From Zero to Hero: Testing with xUnit in C#
course

From Zero to Hero: Testing with xUnit in C#

Learn how to test any codebase in .NET with the latest version of xUnit, the industry-standard testing library.

Learn More
Create a ChatGPT Console AI Chatbot in C#
blog

Create a ChatGPT Console AI Chatbot in C#

This walkthrough is your hands-on entry point to create a basic C# console application that talks to ChatGPT using the OpenAI API.

Learn More