News

.NET Upgrade Assistant Now Works with .NET MAUI, Azure Functions

Microsoft added .NET MAUI and Azure Functions support to its .NET Upgrade Assistant, which helps developers upgrade any .NET application to the latest version of .NET from right inside the Visual Studio 2022 IDE.

The .NET Upgrade Assistant is a preview tool added to the Visual Studio Marketplace in February, now used by some 16,000 developers to modernize their .NET applications.

[Click on image for larger view.] .NET Upgrade Assistant (source: Microsoft).

According to the web site of the open source tool, it works with:

  • ASP.NET MVC
  • Windows Forms
  • Windows Presentation Foundation (WPF)
  • Console app
  • Libraries
  • UWP to Windows App SDK (WinUI)
  • Xamarin.Forms to .NET MAUI

The latter was recently added, along with support for Azure Functions, according to a May 2 announcement. It listed the benefits of .NET MAUI over its predecessor, Xamarin.Forms:

  • single project to simplify asset management, NuGet management, and leverage multi-targeting.
  • multi-window support for desktop & tablet scenarios
  • rebuilt layout to improve maintainability, performance, and correct many quirks present in Xamarin.Forms
  • App Builder To standardize app bootstrapping with common .NET pattern
  • decoupled platform from cross-platform controls
  • layered renderer pattern over new handlers
  • refactored Shell implementations

As far as Azure Functions, the post explains there are four major versions of that serverless compute platform:

  • Version 1.x is the oldest version of Azure Functions. It is still supported for .NET Framework but should not be used for new development.
  • Version 2.x was released in 2017. It is a major upgrade from version 1.x and includes a number of new features, such as support for multiple languages, improved performance, and a more flexible deployment model.
  • Version 3.x was released in 2018. It is an update to version 2.x and includes a few new features, such as improved integration with Azure Event Grid, etc.
  • Version 4.x was released in 2020. It is a major upgrade from version 3.x and includes a number of new features, such as support for .NET 6, improved performance, and a more secure architecture.

"When you are upgrading your Azure Functions project to the latest .NET, the tool will automatically upgrade the version of Azure Functions to v4 isolated since it is the best and recommended version," Microsoft said.

In addition to the new support for .NET MAUI and Azure Functions upgrades, the team also announced support for .NET 8, upgrades from UWP to WinUI and support for ARM64. A list of updates and enhancements includes:

  • Improved the way Upgrade Assistant updates NuGet packages.
  • Upgraded Incremental scenario to use YARP 2.0.
  • Improved error handling, now all failures and warnings can be seen in the Progress View for each project component.
  • Many infrastructural updates to the engine of the tool that improved performance and overall quality of upgrades.
  • Support for SDK-style projects that are using System.Web. Before, web projects that were manually converted to SDK-style but still were using System.Web could not be upgraded incrementally and were treated like Core-family projects. Now Upgrade Assistant treats them as .NET Framework projects and allows to upgrade them incrementally, which is the best way to upgrade web applications from .NET Framework to the latest .NET.
  • WinForms -- added handling for the cases when certain APIs from the old version are not supported in the new .NET version.
  • ASP.NET -- added improvements to how projects are getting upgraded behind the scenes.

"Next, we are going to focus on improving the quality of the upgrades, stabilizing the tool, addressing existing bugs and your feedback," Microsoft said. "We will also work on updating the existing CLI tool to talk to the same engine as Visual Studio extension. This way CLI tool will have all the new features that VSIX has, so you can choose between Visual Studio and CLI experience."

About the Author

David Ramel is an editor and writer at Converge 360.

comments powered by Disqus

Featured

  • Hands On: New VS Code Insiders Build Creates Web Page from Image in Seconds

    New Vision support with GitHub Copilot in the latest Visual Studio Code Insiders build takes a user-supplied mockup image and creates a web page from it in seconds, handling all the HTML and CSS.

  • Naive Bayes Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the naive Bayes regression technique, where the goal is to predict a single numeric value. Compared to other machine learning regression techniques, naive Bayes regression is usually less accurate, but is simple, easy to implement and customize, works on both large and small datasets, is highly interpretable, and doesn't require tuning any hyperparameters.

  • VS Code Copilot Previews New GPT-4o AI Code Completion Model

    The 4o upgrade includes additional training on more than 275,000 high-quality public repositories in over 30 popular programming languages, said Microsoft-owned GitHub, which created the original "AI pair programmer" years ago.

  • Microsoft's Rust Embrace Continues with Azure SDK Beta

    "Rust's strong type system and ownership model help prevent common programming errors such as null pointer dereferencing and buffer overflows, leading to more secure and stable code."

  • Xcode IDE from Microsoft Archrival Apple Gets Copilot AI

    Just after expanding the reach of its Copilot AI coding assistant to the open-source Eclipse IDE, Microsoft showcased how it's going even further, providing details about a preview version for the Xcode IDE from archrival Apple.

Subscribe on YouTube

Upcoming Training Events