如何不引用Microsoft.NETCore.App的.NET Core控制台应用程序的依赖项?

时间:2017-08-03 04:02:41

标签: c# .net asp.net-core nuget .net-core

我有一个全新的.NET Core应用程序。默认情况下,.NET Core应用程序引用Microsoft.NETCore.App NuGet包;我想卸载某些引用的软件包,即System.Collections.Immutable,这样我就无法在我的应用程序中使用其中的类型。

如果隐含包含Microsoft.NETCore.App引用,该如何执行此操作?默认情况下安装的软件包现在甚至都没有在.csproj文件中提及,所以我该如何删除它们呢?

以下是我的.csproj文件的内容:

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

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp1.1</TargetFramework>
  </PropertyGroup>

</Project>

1 个答案:

答案 0 :(得分:1)

NuGet支持PackageReference上的标志,允许您控制从依赖项安装哪些资产。您可以像这样排除System.Collections.Immutable的部分内容:

<ItemGroup>
  <PackageReference Include="System.Collections.Immutable" Version="1.3.0" ExcludeAssets="Compile" />
</ItemGroup>

有关详细信息,请参阅https://docs.microsoft.com/en-us/nuget/consume-packages/package-references-in-project-files#controlling-dependency-assets/