本文介绍如何添加和删除包、项目和程序集依赖项。
添加和删除包依赖项
可以通过编辑项目文件或通过 .NET CLI 命令来添加和删除依赖项。
使用命令行界面 (CLI)
若要添加依赖项,请针对您所用的 SDK 版本运行 dotnet package 命令:
dotnet package add Microsoft.EntityFrameworkCore
若要移除依赖项,请针对您的 SDK 版本运行 dotnet package 命令:
dotnet package remove Microsoft.EntityFrameworkCore
编辑项目文件
若要添加依赖项,请在元素中添加项<PackageReference><ItemGroup>。 可以添加到现有 <ItemGroup>,也可以新建一个元素。
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
...
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.2" />
</ItemGroup>
</Project>
该 Include 属性指定要添加到项目的包的 ID。 该 Version 属性指定要获取的版本。 根据 NuGet 版本规则指定版本。
使用条件添加仅在特定目标中可用的依赖项,如以下示例所示:
<PackageReference Include="PACKAGE_ID" Version="PACKAGE_VERSION" Condition="'$(TargetFramework)' == 'netcoreapp2.1'" />
仅当针对该目标的构建发生时,上述示例中的依赖项才有效。 条件 $(TargetFramework) 中是在项目中设置的 MSBuild 属性。 对于最常见的 .NET 应用程序,无需执行此作。
若要删除依赖项,请从项目文件中删除其 <PackageReference> 项。
有关 PackageReference项的更多信息,请参阅.NET SDK 项目的 MSBuild 参考。
添加和删除项目引用
当项目依赖于另一个项目时,请使用项目到项目引用。 若要添加和删除项目引用,请编辑项目文件或使用 CLI。
使用命令行界面 (CLI)
若要添加项目引用,请运行适用于你的 SDK 版本的 dotnet reference 命令。
dotnet reference add ../MyLibrary/MyLibrary.csproj
若要删除项目引用,请针对 SDK 版本运行以下命令:
dotnet reference remove ../MyLibrary/MyLibrary.csproj
编辑项目文件
项目 <ProjectReference> 文件元素标识所引用项目的路径。 若要添加项目引用,请在元素中添加项<ProjectReference><ItemGroup>。 可以添加到现有 <ItemGroup>,也可以新建一个元素。
<ItemGroup>
<ProjectReference Include="../MyLibrary/MyLibrary.csproj" />
</ItemGroup>
若要删除项目引用,请从项目文件中删除 <ProjectReference> 该元素。
有关 ProjectReference 此项的详细信息,请参阅 常见 MSBuild 项目项。
添加和删除程序集引用
可以通过项目文件添加和删除程序集引用。 .NET CLI 不提供用于添加或删除程序集引用的命令。
若要引用不属于项目或包的.NET程序集,请将元素添加到<Reference>项目文件。 使用 <HintPath> 元素指定程序集的相对路径或绝对路径:
<ItemGroup>
<Reference Include="MyAssembly">
<HintPath>lib/MyAssembly.dll</HintPath>
</Reference>
</ItemGroup>
若要删除程序集引用,请从项目文件中删除其 <Reference> 元素。
有关 Reference 项目的详细信息,请参阅 常见 MSBuild 项目项。
提示
不要在引用包的 .targets 或 .props 文件中包含还原操作的输入。 这些输入可以包括
PackageReference项、ExcludeAssets属性、要使用的 NuGet 源或其他 NuGet 配置。 在 NuGet 还原完成后,才会使用包中的 .targets 和 .props 文件。 还原所需的任何内容都需要位于项目本身的项目文件或 .targets 文件中,而不是包依赖项。如果要在控制台应用程序或类库中使用 ASP.NET API,请将 FrameworkReference 项添加到项目文件:
<FrameworkReference Include="Microsoft.AspNetCore.App" />有关详细信息,请参阅 使用 ASP.NET Core 共享框架。
另请参阅
- 与引用相关的项目项
- 常见 MSBuild 项目项
- dotnet package list 命令
- 依赖项(库指南)