New to Telerik UI for WPF? Download free 30-day trial

Migrating to .NET Core

This article shows how to migrate from an existing WPF .NET Framework project to a .NET one (.NET Core 3.1, .NET 5, .NET 6 or .NET 7).

Before proceeding with this topic you can check if your application's code is compatible with .NET Core using the Microsoft Portability Analyzer tool.

  1. Create a new .NET Core 3.1 application using Visual Studio.

    Figure 1: Creating new project

    WPF Creating new project

    You can also use the Telerik Visual Studio Extensions to create a new project. Read more about this in the Integration section of the documentation.

  2. Add the existing files from the original project as linked files to the .NET Core project.

    Figure 2: Linking files from the original project

    WPF Add Existing Items To Project

    WPF Linking files from the original project

  3. Reference the Telerik assemblies built against .NET Core 3.1.

    If Telerik UI for WPF is installed on the machine, you can find the dlls in the "UI for WPF installation folder\Binaries\NetCore" folder. Otherwise, download the .zip file with the dlls or install them via the NuGet package manager.

    Figure 3: Checking if a Telerik assembly is built against .NET Core 3.1

    WPF Checking if a Telerik assembly is built against .NET Core 3.1

  4. If you are not using nuget packages to install the Telerik dlls, you will need to install the Microsoft.Windows.Compatibility package manually.

Tips

  • If your project has images with Build Action set to Resource, change it to Embeded Resource or Content.

  • If you use the AssemblyInfo or App.manifest files from your original project, add them manually in the .NET Core project. The new project template uses a different approach and generates the same assembly attributes as part of the build process.

    Example 1: GenerateAssemblyInfo attribute

        <generateassemblyinfo>false</generateassemblyinfo> 
    
  • The getting started experience in RadRichTextBox for .NET Core has been improved compared to its .NET Framework alternative. Check the .NET Core Support help topic for more details on the changes you might encounter.

See Also

In this article