Целевая платформа TargetFramework в C#
Свойство TargetFramework в csproj задаёт версию платформы: от неё зависят
доступные API, поведение среды выполнения и совместимость пакетов NuGet.
Несколько платформ в одном проекте перечисляют свойством TargetFrameworks
и собирают каждую отдельно. Короткую метку платформы, например net10.0,
называют TFM.
Фрагмент консольного проекта под .NET 10:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net10.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>
Проверим, какую платформу видит запущенный процесс:
using System.Runtime.InteropServices;
Console.WriteLine(RuntimeInformation.FrameworkDescription.Contains(".NET"));
Описание среды содержит .NET. Метка TFM в csproj должна совпадать с платформой, установленной на машине, иначе сборка или пакеты не подойдут.
Выведите в консоль текст описания платформы, на которой выполняется программа.