Skip to content

Take a legacy .NET Framework monolith and modernize it to the latest .NET release using AI-powered tooling and GitHub Copilot agents.

License

Notifications You must be signed in to change notification settings

Azure-Samples/modernize-monolith-workshop

πŸš€ Modernize your monolith: From .NET Framework to microservices in Azure

In this full-day workshop, you'll take a legacy .NET Framework monolith and modernize it to the latest .NET release using AI-powered tooling and GitHub Copilot agents. You'll learn how to layer in cloud-native capabilities with .NET Aspire for service discovery, telemetry, and orchestration, containerize the app, and deploy it to Azure Container Apps using GitHub Actions and Bicep. Along the way, you'll even explore how to integrate Azure AI services to enhance your application with intelligent capabilities, culminating in a production-ready microservices solution built for scale and agility.

πŸ“š What you'll learn

By the end of the day, you'll have gained:

⬆️ Hands-on experience upgrading to modern .NET
πŸ—οΈ Practical experience of building cloud-native applications with .NET Aspire
πŸš€ End-to-end deployment skills using Azure Container Apps with azd and GitHub Actions

πŸ“‹ Prerequisites

You should be familiar with C# and .NET - enough that you're comfortable with your way around web APIs and Blazor applications. We'll cover some GitHub Copilot and .NET Aspire along the way - but don't worry, you don't need to be an expert in either. We'll also talk about microservice architecture and deployment to Azure Container Apps. That's going to mean Azure and containers. It would be good for you to have a basic understanding of cloud computing and containers, but again, you don't need to be an expert.

Here are some things you will need:

πŸ”¨ Visual Studio 2022
☁️ Access to an Azure subscription
πŸ€– Access to a GitHub Copilot Pro subscription
🐳 Docker Desktop (or another way to run container images locally)

🎯 Getting started

This workshop is split into 8 different parts. Each shows you an aspect of modernizing your app. The sections each have their own learning materials and hands-on exercises in sub-folders.

  1. πŸ”§ Setup your environment
  2. πŸ”„ Upgrade .NET Applications
  3. πŸ€– Modernize with GitHub Copilot app modernization
  4. πŸ—οΈ Refactor into microservices
  5. ⭐ Add .NET Aspire (service discovery, dashboard / telemetry)
  6. πŸš€ Add additional Redis for caching (add to Aspire)
  7. ☁️ azd to deploy to ACA
  8. 🧠 Add in some AI

Let's go! πŸŽ‰

πŸ“– Learn more!

Some additional learning resources for you!

πŸŽ₯ From legacy to cloud native: Accelerating Modernization at scale and AI
πŸŽ₯ The Future of .NET App Modernization Streamlined with AI
πŸŽ₯ Using agentic AI to simplify .NET upgrades with GitHub Copilot
πŸŽ₯ Elevating Development with .NET Aspire: AI, Cloud, and Beyond
πŸŽ₯ Better Microservices Development using Azure Container Apps
⬆️ .NET Platform Upgrade
πŸ“– GitHub Copilot App Modernization Overview
πŸš€ Beast Mode (search beast mode, under chat modes)
πŸŽ“ Learn MCP
πŸ› οΈ Awesome azd (for templates)

About

Take a legacy .NET Framework monolith and modernize it to the latest .NET release using AI-powered tooling and GitHub Copilot agents.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Contributors