惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
F
Fortinet All Blogs
Martin Fowler
Martin Fowler
M
MIT News - Artificial intelligence
G
Google Developers Blog
P
Proofpoint News Feed
Recent Announcements
Recent Announcements
MyScale Blog
MyScale Blog
D
DataBreaches.Net
Stack Overflow Blog
Stack Overflow Blog
月光博客
月光博客
爱范儿
爱范儿
罗磊的独立博客
腾讯CDC
Hugging Face - Blog
Hugging Face - Blog
博客园 - 叶小钗
Vercel News
Vercel News
酷 壳 – CoolShell
酷 壳 – CoolShell
B
Blog
C
Check Point Blog
美团技术团队
宝玉的分享
宝玉的分享
Microsoft Security Blog
Microsoft Security Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻

Visual Studio Blog

Today I will... find hidden latency across a distributed .NET application - Visual Studio Blog Stop alt-tabbing into the wrong Visual Studio - Visual Studio Blog Today I will... review GitHub PRs - Visual Studio Blog VSLive! @ Microsoft HQ: Developer Takeaways and Must-Watch Sessions - Visual Studio Blog The Visual Studio Debugger Agentic Workflow Gets a Test-Driven Upgrade - Visual Studio Blog Visual Studio August Update — Work Smarter Across Models and Branches - Visual Studio Blog Unlocking the Power of AI for Every Developer in Visual Studio with Bring your Own Model - Visual Studio Blog Today I will... manage Git Submodules without leaving the IDE - Visual Studio Blog Build Azure Skills Faster with Cloud Academy, a Visual Studio Subscriber Benefit - Visual Studio Blog Tell your model when to think harder  - Visual Studio Blog Visual Studio July Update — Meet the New Agent, Powered by the GitHub Copilot SDK - Visual Studio Blog Visual Studio Administrator? Join our Private Marketplace Preview! - Visual Studio Blog Pick, manage, and get the most from your models - Visual Studio Blog Built-in Agent Skills Bring .NET and Azure Expertise into Visual Studio - Visual Studio Blog The Visual Studio Dev/Test Benefit: Freedom to Build, Test, and Experiment in Azure - Visual Studio Blog Visual Studio June Update - Track Your Usage, Trust Your Tools - Visual Studio Blog Automating your Visual Studio extension builds with GitHub Actions - Visual Studio Blog Make Visual Studio look the way you want - Visual Studio Blog Review pull requests without leaving Visual Studio What’s Coming Next in Visual Studio: Our Microsoft Build 2026 Announcements Visual Studio May Update – Plan, Review, Refine Plan Before You Build: Introducing the Plan agent in Visual Studio VSLive! Microsoft AI Hackathon 2026: Send Your Team Home With Working Code Agent Skills in Visual Studio: Teach Copilot How Your Team Works TypeScript 7 Beta Now Enabled by Default in Visual Studio 2026 18.6 Insiders 3 SDK-Style Support for Extension Projects Visual Studio April Update – Cloud Agent Integration - Visual Studio Blog From AI to .NET: 20 VS Live! Las Vegas Sessions You Can Watch Now - Visual Studio Blog Azure MCP tools now ship built into Visual Studio 2022 — no extension required Stop Hunting Bugs: Meet the New Visual Studio Debugger Agent Workflow
Today I will... Modernize a .NET application - Visual Stu...
Matt Soucoup · 2026-08-22 · via Visual Studio Blog

Today I will modernize a .NET Framework application to .NET 10 using the GitHub Copilot modernization tooling built-in to Visual Studio.

The tooling helps us upgrade applications running on legacy versions of .NET and also migrate them to Azure. Today we’re going to focus on the upgrade portion.

And, the tooling will do all the work for us! But it doesn’t do everything at once, and that’s good. It introduces checkpoints into the .NET upgrade process to tell us what it has been up to we can then guide it towards the outcome we want. And at each of those checkpoints it creates a markdown file that we can check in to source control – in other words, a record of both what came out of and what went in to the upgrade process.

The app we’re modernizing

BookCatalog is a simple .NET Framework forms-over-data app. You can list books, add one, edit, delete.

screenshot of the book catalog application

Step 1: Open the sample

Clone the repo and open BookCatalog.sln from shared-legacy-app/.

  1. git clone https://github.com/microsoft/dotnet-modernization-for-beginners.git
  2. Open BookCatalog.sln in Visual Studio 2022+ from the shared-legacy-app in the folder you cloned.

Step 2: Start modernization

In Visual Studio, right-click the project or solution and select Modernize. You can also start from Visual Studio with @Modernize.

Screenshot howing the option to start the modernize agent That opens the GitHub Copilot chat window with a customized modernization agent / experience loaded up. This agent is specifically tuned to go through the process of modernizing applications.

Screenshot of the GitHub Copilot chat experience for the modernization agent

It provides several sample prompts, but you can also tell it what to do in natural language.

But for today, pick the top suggested prompt Upgrade to a newer version of .NET.

The agent will then ask you 2 questions. The first is which target framework to upgrade to – pick .NET 10.

screenshot of the agent asking which .NET target framework to upgrade to

And then the flow mode. Remember when I said the modernization process would stop at checkpoints along the way – well, it’ll only do that if we pick Guided so pick that.

Screenshot of the modernization agent asking the type of flow mode to use

What Guided is going to do is it will pause and let you check its work.

The agent will first assess our project and create a report. The guided mode allows us to review that report and make any changes to it. And … we can check that report in to source control. (It looks good – show it to your boss you’ll look super productive! 😉)

Then it will create a plan to fix any issues and do the upgrade. Guided mode lets us review and update that plan should we want to. Guided mode shows us a step-by-step execution of the upgrade itself. You get the picture.

Step 3: Review the assessment

The first thing it rolls through is the assessment. The assessment helps separate blockers, warnings, and informational findings before the upgrade itself starts to run.

Screenshot of reviewing the assessment

The assessment helps you understand what must change first. In this sample, the modernization work includes moving from System.Web.Mvc patterns toward ASP.NET Core equivalents and moving the data layer from Entity Framework 6 to EF Core.

Screenshot of the way to approve the assessment and continue

Step 4: Review the upgrade plan

Once you approve the assessment, the agent will start to create a plan on how it will do the upgrade and it’ll present you with some options on how it can do it.

Screenshot of the upgrade options window for modernization

We could modify the options of how the agent creates the upgrade plan, but we’ll take the default.

screenshot of accepting the default options for upgrading.

Then it produces the plan. It’s a good idea to read that through. This forms the basis of how the agent will upgrade the app.

Screenshot of the upgrade plan

Step 5: Upgrade!

Approve the plan and the agent starts working through the tasks one at a time.

screenshot of approving the plan in the github copilot chat window   Guided mode will pause between the tasks so you can check on its work.

Screenshot of ugided mode in copilot stopping to ask questions during the upgrade   Five tasks later, it’s done!

Screenshot of GitHub Copilot reporting the upgrade process is finished

Verify it

Screenshot of the newly upgraded application running

F5 the application and it should start up. Now, of course AI did the work. And it may not have worked the first time through. You never get the same thing twice with AI. In that case, use Visual Studio’s GitHub Copilot debugging features and you should get it up and running very quickly.

And once the app does start up… it looks exactly the same! The modernization agent doesn’t upgrade the UX for you – that’s for you to vibe on your own.

Wrap-up

The app is upgraded to .NET 10. If you want you can use the GitHub Copilot modernization for .NET tooling to migrate it to Azure too.

We’ve created a course : .NET Modernization for Beginners that goes more in-depth into both the upgrade and migration flows. Check it out. And of course, leave some comments on this post to let us know your experiences.

AI-assisted content. This article was partially created with the help of AI. An author reviewed and revised the content as needed. Learn more