net-standard
  1. net-standard-migrating-net-core-libraries

Migrating .NET Core Libraries

Introduction

This tutorial guides you through the process of migrating existing .NET Core libraries to .NET Standard. Migrating to .NET Standard allows your libraries to be used across a broader range of .NET platforms, enhancing compatibility and reusability.

Migrating to .NET Standard

Syntax

The migration involves updating the target framework in the project file to target .NET Standard. Modify the TargetFramework property in the .csproj file:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <!-- Old .NET Core Target Framework -->
    <!--<TargetFramework>netcoreapp3.1</TargetFramework>-->

    <!-- Migrate to .NET Standard -->
    <TargetFramework>netstandard2.0</TargetFramework>
  </PropertyGroup>

</Project>

Example

Consider a simple .NET Core library project with the following project file:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
  </PropertyGroup>

</Project>

Update the TargetFramework to migrate to .NET Standard:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
  </PropertyGroup>

</Project>

Explanation

  • .NET Standard Compatibility: .NET Standard is a set of APIs that are common across various .NET platforms. Migrating to .NET Standard ensures compatibility with a broader range of platforms.
  • Project File Modification: Update the TargetFramework property in the project file to target .NET Standard.

Use

  • Enhanced Compatibility: .NET Standard libraries can be used in .NET Core, .NET Framework, Xamarin, and other compatible frameworks.
  • Unified Codebase: Migrate to .NET Standard to create a unified codebase that can be shared across multiple platforms.
  • NuGet Package Compatibility: Make your library compatible with platforms that support .NET Standard, simplifying NuGet package consumption.

Important Points

  1. Check API Compatibility: Ensure that the APIs used in your library are compatible with the chosen .NET Standard version.
  2. Test Across Platforms: After migration, thoroughly test your library on different platforms to ensure compatibility and functionality.
  3. NuGet Package Updates: If your library is distributed as a NuGet package, update the package to target .NET Standard.

Summary

Migrating .NET Core libraries to .NET Standard is a strategic move to enhance compatibility and enable code sharing across diverse .NET platforms. By updating the target framework in the project file, you create libraries that are more versatile and can be leveraged in a wider ecosystem.

Published on: