Перейти к содержанию

Файл проекта .csproj: определение зависимостей

Файл .csproj — файл проекта .NET приложения и содержит данные, необходимые инструментам .NET для сборки. Он определяет тип проекта (веб-приложение, консольное приложение или библиотека), целевую платформу (.NET Core 3.1, .NET 5) а также зависимости от NuGet пакетов.
Вот какие изменения претерпел файл .csproj в ASP.NET Core:

  • отсутствие GUID-ов
  • Неявное включение файла — прежде каждый файл должен был быть указан в файле .csproj, чтобы быть включенным в сборку. Теперь файлы включаются автоматически (а вот исключения, наоборот, фиксируются)
  • отсутствие путей к .dll-файлам пакета NuGet — теперь зависимость просто указывается в файле проекта, а пути указывать не нужно.

Вот полный листинг файла проекта нашего приложения:

<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>net5.0</TargetFramework>
  </PropertyGroup>
</Project>

Параметр Sdk указывает на тип проекта; значение в ноде TargetFramework указывает целевую платформу.
Наиболее частыми изменениями, вносимыми в этот файл, будут элементы PackageReference — в них указываются пакеты NuGet, от которых зависит ваш проект. Их можно добавить через VS, щелкнув правой кнопкой мыши на имени проекта или узле Dependencies и выбрать пункт Manage Nuget Packages. Другой вариант — воспользоваться командой dotnet add package, например,
dotnet add package Newtonsoft.Json

добавляет популярную библиотеку для работы с форматом JSON.
После этого файл проекта будет выглядеть так:
<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>net5.0</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
  </ItemGroup>
</Project>


Последнее обновление : 11 апреля 2023 г.
Дата создания : 19 сентября 2022 г.

Комментарии

Комментарии