Tim Anderson explores the migration of .NET Framework applications to modern .NET using GitHub Copilot in Visual Studio, detailing developer reactions, licensing changes, and technical hurdles.

Migrating .NET Framework Apps with GitHub Copilot in Visual Studio

Author: Tim Anderson

Overview

The post examines Microsoft’s transition from the legacy .NET Upgrade Assistant to a GitHub Copilot-powered modernization workflow in Visual Studio, focusing on migrating .NET Framework applications to modern .NET (formerly .NET Core).

Key Points

  • GitHub Copilot Modernization Workflow:
    • Microsoft has integrated Copilot into Visual Studio as the new mechanism for upgrading .NET Framework projects.
    • The previous Upgrade Assistant extension is now hidden but can still be enabled via settings (Tools > Options > Projects and Solutions > Modernization > Enable legacy Upgrade Assistant).
    • Copilot’s modernization can be accessed via Copilot Chat and requires a paid Copilot subscription (Pro/Pro+/Business/Enterprise).
    • Attempting use without a license prompts an error message.
  • Developer Feedback:
    • Many developers found the older, free Upgrade Assistant tool to be superior—clearer, faster, and more deterministic.
    • Some encountered issues with Copilot’s AI-driven upgrade, such as failed MVC and API controller updates and significant manual code fixes (hundreds of hours expended in some cases).
    • Reported that Copilot’s tool had a less formalized process, increasing risks compared to legacy workflows.
  • Technical Challenges:
    • Migration is especially difficult for business apps using Windows-only features or custom add-ons.
    • Pure C# or VB.NET logic migrates easily, but complex dependencies often require extensive new code.
    • .NET Framework remains maintained (latest: 4.8.1, August 2022, with Arm64 support), but lacks new feature development.
    • Modern .NET is cross-platform, reducing friction and costs for cloud deployments.
  • Azure Managed Instance Alternative:
    • Microsoft previewed Managed Instance on Azure App Service for legacy .NET Framework hosting.
    • Supports features that hinder migration, such as custom COM components and registry/file access, via remote desktop.
    • Intended for diagnostics; persistent changes require scripting.
  • Cost and Licensing Considerations:
    • Copilot requires a subscription, raising costs compared to free legacy tools.
    • AI-driven solutions entail cloud-based LLM processing expenses.
    • Ongoing trend of premium AI replacing free developer utilities.

Conclusions

Microsoft’s push to integrate Copilot into developer tooling for modernization brings advanced AI assistance but raises licensing, complexity, and reliability questions for practitioners. While legacy upgrade tools remain available, they are now harder to find, and managed cloud alternatives appear for harder-to-modernize workloads.

References and Further Reading


See Also

This post appeared first on “DevClass”. Read the entire article here