Восстановление dotnet restore в C#
Команда dotnet restore читает PackageReference, скачивает пакеты в
локальный кэш NuGet и записывает список зависимостей в obj/project.assets.json.
Компиляция ещё не выполняется, но без этой команды сборка на чистой машине
не найдёт зависимости.
Команда dotnet build обычно вызывает восстановление сама. Отдельный
шаг удобен, когда сменили версии пакетов или проект собирают на другой машине.
Зависимость в проекте:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net10.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Data.Sqlite" Version="10.0.14" />
</ItemGroup>
</Project>
После restore тип из пакета доступен в коде:
using Microsoft.Data.Sqlite;
using SqliteConnection db = new("Data Source=:memory:");
Console.WriteLine(db.GetType().Assembly.GetName().Name);
В графе зависимостей видно имя пакета. Файл project.assets.json фиксирует точные версии, в том числе пакеты, которые пришли вместе с этим.
После restore выведите 1, если obj/project.assets.json существует.