June update brings a new and updated version of the .NET Upgrade Assistant. With the latest release, the dotnet team ensures that the CLI tool now includes all the new features which are already available within the Visual Studio Extension engine. The latest release now offers developers a choice between Visual Studio and CLI experiences, allowing them to take advantage of the latest features and improvements offered by the .NET upgrade tool.
The Upgrade Assistant CLI tool is a valuable resource designed to aid developers in upgrading their applications to the most recent version of .NET. It also facilitates the migration process from older platforms, such as Azure Functions, WinForms, Xamarin.Forms and UWP, to newer alternatives. Now, this functionality is accessible through both the Visual Studio and command line experiences, providing developers with flexibility in their preferred workflow.
In a recent development, the .NET Upgrade Assistant CLI tool has been updated with a new engine, which mirrors the one used in the Visual Studio extension of Upgrade Assistant. This update enables developers to seamlessly transfer various types of applications while leveraging the power of AI during the upgrading process. As a result, developers now have access to enhanced capabilities within the tool, enhancing their overall upgrading journey.
The original announcement post provides step-by-step instructions for installing and utilizing the newly released .NET Upgrade Assistant CLI tool. To begin, users are advised to install the global .NET tool by executing the following command: dotnet tool install -g upgrade-assistant
. For those who already have the tool installed and wish to update it to the latest version, the recommended command is dotnet tool update -g upgrade-assistant
.
Once the tool is successfully installed, users can proceed with porting their applications. By navigating to the directory containing the desired project, developers can initiate the upgrade process by executing the command upgrade-assistant upgrade
. Notably, the CLI tool offers an interactive interface that facilitates the selection of the specific project to be upgraded and the target .NET version. Utilizing the arrow keys, users can navigate the available options and press Enter to initiate the chosen task. This interactive approach simplifies the upgrading process and ensures efficient utilization of the tool's functionalities.
In addition to this, a user named Mark Adamson wrote a comment with a proposal for future features. On June 2, 2023, the user wrote the following:
This looks great. It would be really useful if it had an option to purely convert a legacy project to the SDK project format. This is often the first step we do when migrating a legacy application because we can then get it merged in reasonably quickly and then follow up with updates to .net standard and then .net core at a later point.
Olia Gavrysh, an author of the original release post, published the tweet which gathered some of the community feedback. And one of those comments was related to the Entity Framework Core upgrade, a user named Maikel van Haaren, wrote the following:
The new CLI experience is looking good! Is there some list of other changes made to the tool? And whats the plan on supporting the upgrade from EF to EF Core? Any more concrete details on that?
... and Gavrysh's answer was:
The tool now supports all project types except WebForms (and upgrades for WCF will come soon). It has an improved way of upgrading the projects and all dependencies, such as nuget packages, using AI for some code upgrades, etc.
Based on these community discussions, developers can expect that support for the upgrade of WCF to WCF Core is coming soon to the .NET Upgrade Assistant tool.
Lastly, a survey is also available, to gather feedback on the newly updated features for upgrading .NET projects from CLI tools. Users are encouraged to share their experiences and suggest improvements by participating in the survey. More info and details about .NET Upgrade Assistant can be found on the official Microsoft dotnet website.