ComponentOne Supports .NET Core 3.0
GrapeCity is pleased to announce that ComponentOne's multi-platform UI controls are ready for .NET Core 3.0. With .NET Core 3.0 (and the future of .NET in general) changes are coming for third-party UI controls. While the runtime experience is still the same, there are some limitations you should be aware of when it comes to the development side of things.
First, controls for .NET Core 3.0 and the future 5.0 version of the .NET Framework will be delivered exclusively through NuGet. It will no longer through the toolbox alone. For the past couple decades, .NET 1.x through .NET 4.x, WinForms, WebForms and WPF developers have used the toolbox feature of Visual Studio to add UI controls to their apps. When a third-party control is dropped onto a form from the toolbox, the required assemblies and licensing information would be automatically added to the project.
For .NET Core 3.0 and beyond, we must now add the references from the Nuget Manager. Once the reference is added, the controls will appear in the toolbox.
The second big change involves licensing. The old model that uses a licenses.licx file is going away. The automatic license generation is not supported for .NET Core 3.0 and it likely will not be with .NET Framework 5.0. Third-party control vendors, like GrapeCity, must provide alternative measures to help developers license their apps. For the immediate time being, the licenses.licx file works with .NET Core 3.0 so long as the developer manually creates it correctly. More on this is described below. Next year, we’ll be releasing more information on licensing in .NET 5.0. Stay tuned!
Get Started with .NET Core 3.0 and ComponentOne Controls
Even though .NET Core 3.0 is now officially released, you must download the latest Preview version of Visual Studio 2019 to get started.
Then you can work with any ComponentOne control from the following platforms that support .NET Core 3.0: WinForms, WPF, and of course, ASP.NET Core.
To obtain the latest version of ComponentOne controls, download the ComponentOne 2019 v2 release, and then run the C1Live updates from the ComponentOne control panel.
Install the controls you need on the first tab of the control panel, and then update them to the latest pre-release versions on the 2nd tab shown below.
Working with ASP.NET Core and .NET 3.0
For the past few years, we’ve been providing Core 1.0 and 2.0 compatible bits for ASP.NET Core apps. Now, we’re providing .NET Core 3.0-tested controls available through NuGet and the ComponentOne installer. There aren’t any noteworthy changes for using ComponentOne controls for ASP.NET Core.
See our previous example working with ASP.NET Core here.
Unlike WinForms and WPF, ASP.NET Core apps do not support the old licensing method. Instead, GrapeCity provides an app-key based licensing system for ASP.NET Core and UWP. These modern platforms are already ore future-proof.
Working with WinForms and .NET Core 3.0
The biggest change for WinForms .NET Core 3.0 support is the lack of design-time. You can work around this by adding a classic WinForms project to your .NET Core 3.0 solution.
Our previous blog post, WinForms and .NET Core 3.0, offers more detail on the following:
- How to add ComponentOne controls to a WinForms .NET Core 3.0 project.
- How to work around the designer limitations by adding a classic WinForms project template.
- How to work-around the licensing (nag screen) limitations by manually creating a license file.
- How to migrate an existing WinForms project to .NET Core 3.0.
Coming Soon - ComponentOne 2019 v3
In the upcoming 2019 v3 release, the ComponentOne WinForms edition will include new project templates that will solve the limitations mentioned above to simplify developer's work.