On May 6, 2019, Microsoft announced that the next big release after .NET Core 3.0 would be .NET 5. The main highlight of .NET 5 is that, going forward, there will be one set of unified base class libraries (BCL) for all app models, like ASP.NET Core, Entity Framework Core, WinForms, WPF, and Xamarin.
We are excited to announce that Syncfusion’s desktop and web controls will support .NET 5 starting from our upcoming 2020 Volume 2 beta release, which is planned for mid-June 2020. Since Microsoft is bringing WinForms designer support, we are also planning to provide toolbox support for Windows Forms using NuGet.
Is .NET 5 the next step for .NET Core?
Yes. .NET 5 is truly a huge announcement from Microsoft. Using .NET 5, our code base and project files will look and feel the same regardless of the type of app we are working on. We will have access to the same APIs, runtime, and language capabilities for each app.
Transformation from .NET Framework to .NET
.NET Framework is almost 18 years old now. The first version of .NET Framework was released way back in February 2002. There have been lots and lots of apps built over the .NET Framework over these years, using almost every functionality provided by Microsoft. So, the scope for innovation in .NET Framework became diminished.
A few years ago, in 2016, Microsoft came up with the first version of .NET Core by tagging it as the future of the .NET Framework, providing cross-platform support for Mac and Linux users.
Further updates of .NET Core, for example the third major upgrade of .NET Core 3.0, almost bridged the gap with the latest .NET Framework, empowering WPF, WinForms, and Entity Framework 6.
And now, Microsoft has announced .NET 5, the future of .NET.
Release schedule of .NET
Microsoft targets November 2020 to release the official version of .NET 5.0. It then intends to produce major upgrades every November.
Microsoft purposefully skipped version 4, as it would confuse users familiar with the .NET Framework version 4.X series (.NET Framework 4.0, 4.5, 4.5.1, 4.6, etc.).
Best new traits of .NET 5
.NET 5 will consist of new .NET APIs, broader desktop development, runtime capabilities, language features, and much more.
Desktop development
Microsoft already provided WPF and WinForms desktop app development in.NET Core 3.0. In .NET 5.0, Microsoft makes a big leap forward by including Universal Windows Platform (UWP) and Xamarin. So, it will include WPF, WinForms, UWP, and Xamarin in its desktop development SDK.
Mobile and cloud development
Using Xamarin, .NET 5 will include cross-platform mobile development support for Android OS, iOS, Linux, watchOS, and tvOS.
Azure app development will also be one of the major functionalities of .NET 5. With the release of the latest .NET, developers will continue to develop software with Azure. Azure Cloud development includes a mix of tools and frameworks, including Web API, ASP.NET, serverless computing, Azure databases, Docker containers, microservices, DevOps, and more.
Runtime experiences of .NET 5
According to the Microsoft update, .NET 5 will have an option for users to choose from its two different runtimes, Mono and CoreCLR.
High-level goals for .NET 5
Here are some of the high-level goals set for .NET 5.0, according to Microsoft:
- “Unified .NET SDK experience:1. Single BCL (base class library) across all .NET applications.2. Mobile development using Xamarin is integrated into .NET 5. This means the .NET SDK will support mobile app development also.
- Native Applications will support multiple platforms: Single Device project that supports an application that can work across multiple devices for example Window Desktop, Microsoft Duo (Android), and iOS using the native controls supported on those platforms.
- Web Applications will support multiple platforms: Single Blazor project that supports an application that can work in browsers, on mobile devices and as a native desktop application (Windows 10x for example)
- Cloud Native Applications: High performance, single file (.exe) microservices and support for building multiple project (API, web front ends, containers) both locally and in the cloud.
- Continuous Improvements: faster algorithms in the BCL, better support for containers in the runtime, support for HTTP3.”
The first preview released doesn’t has all these features. But who knows, Microsoft promises these high-level goals to be unveiled in the upcoming preview releases and will be completely available in the public release later November this year.
.NET 5.0 preview 1
At the end of last year, Microsoft released .NET Core 3.0 and 3.1. This release added the desktop app models WinForms and WPF, as well as ASP.NET Blazor for building single-page applications.
On March 16, 2020, Microsoft released the first preview version of .NET 5.0, for which the general availability is scheduled for November 2020.
How to install .NET 5.0 Preview 1
To get started with .NET 5.0, we need to install the .NET 5.0 SDK and the Visual Studio VS 2019 16.6 update.
On Mac OS, it is recommended to install the latest preview of Visual Studio 2019 for Mac 8.6.
Upgrading an existing project
To upgrade an existing .NET Core 3.1 app to .NET 5:
- Update the TargetFramework property to “netcoreapp5.0”.
<TargetFramework>netcoreapp5.0</TargetFramework>
- Update all Microsoft.AspNetCore.* package references to “0.0-preview.1.20124.5”.
- Update all Microsoft.Extensions.* package references to “0.0-preview.1.20120.4”.
Here is the complete list of the breaking changes in .NET 5.0 that we should know to proceed with it.
.NET 5.0 preview 4
As we were creating this blog, Microsoft came up with its fourth preview of.NET 5.0, on May 19.
You can find more information and features included in this preview release on this blog.
How is Syncfusion targeting support for Microsoft .NET 5?
As always, we are excited to provide support for .NET 5 for various platforms across our Essential Studio suites. In our upcoming 2020 Volume 2 beta release, we will provide the compatibility for desktop and web controls.
We are waiting for this November to provide complete support for .NET 5, to go with the .NET 5 release. We know you are also excited for Syncfusion’s single-base class library that will work with all the Windows desktop platforms (WinForms, UWP, and WPF) and mobile app development platforms like Xamarin.
We assure you that upgrading your Syncfusion applications to .NET 5.0 will be a hassle-free process and we will be with you on this.
Conclusion
This blog post has only discussed a small part of the features and updates coming with .NET 5.0 when it’s finally released. We recommend that you look out for important updates and preview releases for .NET 5.0 at https://devblogs.microsoft.com/dotnet/.
Syncfusion has 1,600 components and frameworks for WinForms, WPF, ASP.NET (Web Forms, MVC, Core), UWP, Xamarin, Flutter, JavaScript, Angular, Blazor, Vue, and React. Use them to boost your application development speed.
If you aren’t a Syncfusion customer yet, you can try our 30-day free trial to check out our features. Also, try our samples from this GitHub location.
If you wish to send us feedback, please use the comments section below. If you would like to submit any questions, please feel free to contact us through our support forum, Direct-Trac, or feedback portal. We are always happy to assist you!