Správa závislostí balíčků v aplikacích .NET

Tento článek vysvětluje, jak přidat a odebrat závislosti balíčků úpravou souboru projektu nebo pomocí rozhraní příkazového řádku.

Element <PackageReference>

Element <PackageReference> souboru projektu má následující strukturu:

<PackageReference Include="PACKAGE_ID" Version="PACKAGE_VERSION" />

Atribut Include určuje ID balíčku, který se má přidat do projektu. Atribut Version určuje verzi, která se má získat. Verze se zadají podle pravidel verzí NuGet.

Podmínky použijte k přidání závislosti, která je k dispozici pouze v určitém cíli, jak je znázorněno v následujícím příkladu:

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

Závislost v předchozím příkladu bude platná pouze v případě, že sestavení probíhá pro daný cíl. V $(TargetFramework) podmínce je vlastnost MSBuild, která je nastavena v projektu. U nejběžnějších aplikací .NET to nemusíte dělat.

Přidání a odebrání závislostí

Závislosti můžete přidávat a odebírat úpravou souboru projektu nebo pomocí příkazů .NET CLI .

Úprava souboru projektu

Pokud chcete přidat závislost, přidejte <PackageReference> položku do elementu <ItemGroup> . Můžete přidat do existujícího <ItemGroup> nebo vytvořit nový.

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

  <PropertyGroup>
    ...
  </PropertyGroup>

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

</Project>

Pokud chcete odebrat závislost, odeberte její <PackageReference> položku ze souboru projektu.

Použití rozhraní příkazového řádku

Pokud chcete přidat závislost, spusťte dotnet add package příkaz, jak je znázorněno v následujícím příkladu:

dotnet add package Microsoft.EntityFrameworkCore

Pokud chcete odebrat závislost, spusťte dotnet remove package příkaz, jak je znázorněno v následujícím příkladu:

dotnet remove package Microsoft.EntityFrameworkCore

Tipy

  • Nezahrnujte vstupy do operace obnovení do souboru .targets nebo .props odkazovaného balíčku. Tyto vstupy můžou zahrnovat PackageReference položky, ExcludeAssets atributy, informační kanály NuGet, které se mají použít, nebo jinou konfiguraci NuGetu. Soubory .targets a .props z balíčků se po dokončení obnovení NuGet nepoužívají. Cokoli potřebného k obnovení musí být v souboru projektu nebo souboru .targets samotného projektu, nikoli v závislosti na balíčku.

  • Pokud chcete použít rozhraní API ASP.NET v konzolové aplikaci nebo knihovně tříd, přidejte do souboru projektu položku FrameworkReference :

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

    Další informace najdete v tématu použití sdílené architektury ASP.NET Core.

Viz také