We are happy to announce the release of Visual ReCode 2.0!
With Visual ReCode 2.0, we have added the following major new features and improvements:
- .NET 5 Support: Now teams can choose between targeting .NET Core or .NET 5 for WCF to gRPC conversions.
- Guided Project Upgrades: A new tool designed to take you through the optimal upgrade path for your unique project.
- Faster Conversion Times: We have redesigned Visual ReCode to improve conversion speeds and provide rock-solid stability.
Visual ReCode 2.0 provides an easy to use, complete migration solution for teams looking to move from .NET Framework with WCF to .NET 5 with gRPC. Below, we take a more in-depth look at the update.
.NET 5.0 support
When migrating a WCF project to gRPC, you will now have the option to target either .NET Core 3.1 or the latest .NET 5.0.
If you want the absolute best performance in the new application, then .NET 5.0 is the way to go. At Microsoft, various teams worked very hard on performance for .NET 5, including the gRPC team who improved their implementation code. Now it’s the fastest of all gRPC implementations, including C++ and Go. .NET 5.0 provides additional performance benefits from the improvements to the underlying HTTP/2 implementation in the Kestrel web server, which continues to sit near the top of the TechEmpower benchmarks.
Besides performance improvements, .NET 5.0 has additional features that might be valuable for your project. You can find out more in the .NET 5 documentation.
Guided Project Upgrades
One of the biggest challenges in upgrading all kinds of applications to .NET Core or .NET 5 is making sure the code and all the dependencies are compatible.
Your code might be using features of .NET that are no longer supported, or you might have references to NuGet packages that haven’t been updated.
Guided Project Upgrades help you navigate this issue by finding the optimal upgrade path for you. Then, it takes you through each project in your solution one at a time and gets them cross-compiling against both .NET 4.x and the newer targets, including .NET Standard 2.0 and 2.1, .NET Core 3.1, and .NET 5.0.
Along the way, Visual ReCode will install any NuGet packages for you that require an upgrade if there is a compatible version.
With Guided Project Upgrades, you can be sure you migrate your project as accurately as possible without getting a headache. If you would like to learn more about this tool, we wrote an additional article highlighting its specific features.
Faster Conversion Times
In version 1.0, everything was included in the Visual Studio extension and ran inside the Visual Studio process. While this made it easy to manage, it set two huge limitations:
Visual Studio is a 32-bit process, which means it can only address ~3GB of RAM.
VS 2019 is still a .NET 4.x application, which means extensions have to run on .NET Framework 4.x too. This is both a performance issue and far too ironic.
So, for Visual ReCode 2.0, we redesigned the engine to work outside of Visual Studio as it’s own .NET 5 application communicating with Visual Studio through gRPC.
That’s right; we converted our own project to .NET 5! By doing so, we get to use the best gRPC implementation possible and deploy Visual ReCode as a single-file executable. This way, you get both faster conversion times for your application and a tool that is easy to manage.
Get Started with Your WCF Migration Today
With the release of Visual ReCode 2.0, it is now significantly easier for teams to convert their .NET Framework WCF project to .NET Core or .NET 5 projects with gRPC.
If you are interested in using Visual ReCode for your project, you can try it out today.
But What’s Next?
The next version of Visual ReCode will add support for upgrading ASP.NET Web API applications to ASP.NET Core MVC. This way, teams can take advantage of the amazing performance improvements, cross-platform compatibility, and cloud-readiness of the new .NET in your HTTP and ReSTful services.
If you want to be informed of the next Visual ReCode update, sign-up for our newsletter below to be among the first to know.