Mengelola dependensi dalam aplikasi .NET

Artikel ini menjelaskan cara menambahkan dan menghapus dependensi paket, proyek, dan perakitan.

Menambahkan dan menghapus dependensi paket

Anda dapat menambahkan dan menghapus dependensi dengan mengedit file proyek Anda atau melalui perintah .NET CLI .

Menggunakan CLI

Untuk menambahkan dependensi, jalankan dotnet package perintah untuk versi SDK Anda:

dotnet package add Microsoft.EntityFrameworkCore

Untuk menghapus dependensi, jalankan dotnet package perintah untuk versi SDK Anda:

dotnet package remove Microsoft.EntityFrameworkCore

Mengedit file proyek

Untuk menambahkan dependensi, tambahkan <PackageReference> item di dalam <ItemGroup> elemen. Anda dapat menambahkan ke yang sudah <ItemGroup> ada atau membuat yang baru.

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

  <PropertyGroup>
    ...
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.2" />
  </ItemGroup>

</Project>

Atribut Include menentukan ID paket untuk ditambahkan ke proyek. Atribut Version menentukan versi yang akan didapatkan. Versi ditentukan sesuai aturan versi NuGet.

Gunakan kondisi untuk menambahkan dependensi yang hanya tersedia di target tertentu, seperti yang ditunjukkan dalam contoh berikut:

<PackageReference Include="PACKAGE_ID" Version="PACKAGE_VERSION" Condition="'$(TargetFramework)' == 'netcoreapp2.1'" />

Dependensi dalam contoh sebelumnya hanya akan valid jika build terjadi untuk target tertentu. $(TargetFramework) merupakan properti MSBuild dalam kondisi yang diatur dalam proyek. Untuk aplikasi .NET yang paling umum, Anda tidak perlu melakukan ini.

Untuk menghapus dependensi, hapus itemnya <PackageReference> dari file proyek.

Untuk informasi selengkapnya tentang item PackageReference, lihat referensi MSBuild untuk proyek SDK .NET.

Menambahkan dan menghapus referensi proyek

Gunakan referensi proyek-ke-proyek saat proyek Anda bergantung pada proyek lain. Untuk menambahkan dan menghapus referensi proyek, edit file proyek atau gunakan CLI.

Menggunakan CLI

Untuk menambahkan referensi proyek, jalankan dotnet reference perintah untuk versi SDK Anda.

dotnet reference add ../MyLibrary/MyLibrary.csproj

Untuk menghapus referensi proyek, jalankan perintah berikut untuk versi SDK Anda:

dotnet reference remove ../MyLibrary/MyLibrary.csproj

Mengedit file proyek

Elemen <ProjectReference> file proyek mengidentifikasi jalur ke proyek yang dirujuk. Untuk menambahkan referensi proyek, tambahkan <ProjectReference> item di dalam <ItemGroup> elemen. Anda dapat menambahkan ke yang sudah <ItemGroup> ada atau membuat yang baru.

<ItemGroup>
  <ProjectReference Include="../MyLibrary/MyLibrary.csproj" />
</ItemGroup>

Untuk menghapus referensi proyek, hapus <ProjectReference> elemen dari file proyek.

Untuk informasi selengkapnya tentang item ProjectReference, lihat Item proyek MSBuild umum.

Menambahkan dan menghapus referensi rakitan

Anda dapat menambahkan dan menghapus referensi rakitan melalui file proyek. CLI .NET tidak menyediakan perintah untuk menambahkan atau menghapus referensi rakitan.

Untuk mereferensikan rakitan .NET yang bukan bagian dari proyek atau paket, tambahkan <Reference> elemen ke file proyek. <HintPath> Gunakan elemen untuk menentukan jalur relatif atau absolut ke rakitan:

<ItemGroup>
  <Reference Include="MyAssembly">
    <HintPath>lib/MyAssembly.dll</HintPath>
  </Reference>
</ItemGroup>

Untuk menghapus referensi rakitan, hapus elemennya <Reference> dari file proyek.

Untuk informasi selengkapnya tentang item Reference, lihat item proyek MSBuild umum.

Petunjuk

  • Jangan sertakan input ke operasi pemulihan dalam file .targets atau .props dari paket yang dirujuk. Input ini dapat mencakup PackageReference item, ExcludeAssets atribut, umpan NuGet yang akan digunakan, atau konfigurasi NuGet lainnya. File .targets dan .props dari paket tidak digunakan sampai setelah pemulihan NuGet selesai. Apa pun yang diperlukan untuk pemulihan harus berada dalam file proyek atau file .targets proyek itu sendiri, bukan dependensi paket.

  • Jika Anda ingin menggunakan API ASP.NET di aplikasi konsol atau pustaka kelas, tambahkan item FrameworkReference ke file proyek Anda:

    <FrameworkReference Include="Microsoft.AspNetCore.App" />

    Untuk informasi selengkapnya, lihat Menggunakan kerangka kerja bersama ASP.NET Core.

Lihat juga